谷歌的Play 服务 API 的使用说明 http://developer.android.com/google/play-services/setup.html(例如)说:
将 /extras/google/google_play_services/libproject/google-play-services_lib 库项目复制到您维护 Android 应用项目的源代码树中。
注意:您应该引用复制到源代码树的库的副本,而不应该从 Android SDK 目录引用该库。
这对我来说看起来很丑——为什么不从 SDK 目录引用它呢?这有什么技术原因吗?或者您可以明确控制它何时升级?
我想指出,这完全是 Eclipse 的限制,而且确实很难看。
问题是这个库除了源代码之外还包含资源。 Eclipse 只能处理打包为 jar 文件的库,对于 Android 开发来说,这些库不能包含资源。
因此,为了将库的资源编译到应用程序中,必须将库的源代码和资源添加到您的项目中。
如果您将构建移至 Maven,并使用“理解”Maven 的 IDE,那么您可以将包含资源的库编译为“apklib”,并将其视为外部库,其方式类似于 jar 文件。
新的基于 Gradle 的构建系统基于 Maven 原语构建,但使用不同的格式“aar”。希望它最终也能支持 apklib,以便 Maven 构建和 Gradle 构建可以互操作。
我刚刚完成了将 Android 应用程序转换为 Maven 构建的练习,包括使用一些 apklib。我可以告诉你,带有 m2eclipse 插件的 Eclipse 不能正确处理 apklibs。 IntelliJ 和新的 Google Android Studio(基于 IntelliJ)都可以毫无问题地处理 apklib。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)