在我的应用程序中,我想针对所有 Android 版本 >= 8(需要推送通知),但我很难理解我需要的 API/依赖项的正确组合项目设置。
该项目将需要 Google API 来提供基于位置的服务,我需要/想要使用 ActionBarSherlock用于 ActionBar 支持。
这个设置是否正确?
AndroidManifest.xml:
(1)
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="16" /> <application android:theme="@style/Theme.Sherlock.Light" > ...
图书馆:
(2)
我添加了 android-support-v4.jar
项目属性:
(3) 设置为 Google-APIs 16
ActionBarSherlock:
(4)
我按照 ActionBar-FAQ 上的视频将 ABS 设置为一个库项目,并在其项目属性中将其设置为 Android Level 16,并在其添加了 android-support-v4.jar
lib文件夹。
我知道这是一个基本问题,但我不确定我是否选择了正确的设置。我特别想知道 (3) 是否正确,或者我是否应该将整体 API 级别设置为 8?
更新 1:我在理解 support.jar
的机制时也遇到了问题。如果我将我的构建目标设置为最大值 - 系统如何确保高级功能(如 fragment )在较低的 API(如 8)中工作。这是自动完成的,还是我必须针对支持包手动编码?
更新 2 关于 support.jar
我必须知道我正在使用哪些功能,并且必须针对 support.jar 进行编码。如果我失败并使用了过于高级的功能,则会抛出较低 API 级别的 ClassCastException...?
感谢任何帮助。另外:我是初学者,所以有一些背景信息的答案会受到高度重视:)
谢谢!
最佳答案
看起来不错。正如 ActionBarSherlock.com 上的视频中所述,您希望将第 3 步设置为适用于您的 ActionBarSherlock 版本的最高“项目构建目标”。因此,如果您拥有 ABS 4.1.0,则需要平台 4.1、API 16。
您是否也将 ABS 项目设置为库?您的项目的依赖项应该同时具有:
- < 你的 ABS 库 >.jar
- android-support-v4.jar
关于android - 为我的项目配置正确的 Android-API 级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11710544/