android – 为什么Google建议将库复制到树中?

前端之家收集整理的这篇文章主要介绍了android – 为什么Google建议将库复制到树中?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Google的instructions for using the Play Service API(例如)说:

Copy the /extras/google/google_play_services/libproject/google-play-services_lib library project into the source tree where you maintain your Android app projects.

Note: You should be referencing a copy of the library that you copied to your source tree—you should not reference the library from the Android SDK directory.

这对我来说似乎很难看 – 为什么不从SDK目录中引用它?这有什么技术原因吗?或者是否可以明确控制何时升级

最佳答案
我想指出这完全是Eclipse的限制,它确实很难看.

问题是该库除源代码外还包含资源. Eclipse只能处理打包为jar文件的库,为了Android开发的目的,它不能包含资源.

因此,为了将库的资源编译到应用程序中,必须将库的源代码与资源一起添加到项目中.

如果您将构建移动到Maven,并使用“理解”Maven的IDE,那么您可以将包含资源的库编译为“apklib”,并以类似于jar文件的方式将其视为外部库.

新的基于Gradle的构建系统是基于Maven原语构建的,但是使用了不同的格式,’aar’.希望它最终还能支持apklib,以便Maven构建和Gradle构建可以互操作.

我刚刚完成了将Android应用程序转换为Maven构建的练习,包括使用一些apklibs.我可以告诉你,带有m2eclipse插件的Eclipse不能正确处理apklib. IntelliJ和新的Google Android Studio(基于IntelliJ)都可以毫无问题地处理apklib.

原文链接:https://www.f2er.com/android/430870.html

猜你在找的Android相关文章