android - 不针对最新版本的 Android

标签 android styles themes warnings manifest

尝试在最新的 Android SDK 包 4.2 上测试主题时出现警告。

这是我的 list 文件:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.themetest"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="16" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppBaseTheme" >
        <activity
            android:name="com.example.themetest.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

Not targeting the latest versions of Android; compatibility modes apply. Consider testing and updating this version. Consult the android.os.Build.VERSION_CODES javadoc for details. AndroidManifest.xml /ThemeTest line 7 Android Lint Problem

我正在使用一个名为“AppBaseTheme”的自定义主题。我的问题是请参阅 android.os.Build.VERSION_CODES javadoc。。我该如何解决这个问题?

最佳答案

之所以这样说是因为 targetSdkVersion="16"。 API 16 是 Jellybean 4.1 和 4.1.1,而 Jellybean 4.2 是 API 17。

尝试使用:

<uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="17" />

另外,请记住这是一个 Lint 警告。这些警告的存在是为了帮助您改进代码并使其易于维护,同时与最新的 Android 更改兼容。忽略这一点不会立即给您带来任何问题。

编辑:对于 Android 4.3,最新的 SDK 版本现在是 18,所以你应该使用:

...
        android:targetSdkVersion="18" />

编辑 2:对于 Android 4.4,最新的 SDK 版本现在是 19,所以您应该使用:

...
        android:targetSdkVersion="19" />

编辑 3:对于 Android L,您必须使用以下值,如 here 所述:

compileSdkVersion="android-L"
minSdkVersion="L"
targetSdkVersion="L"

编辑 4:随着 Android L 的公开发布,您必须使用 21 代替:

...
        android:targetSdkVersion="21" />

20 用于 4.4W,或用于 Android Wear .

编辑 5:随着 Android M 的公开发布,您必须改用 23:

...
        android:targetSdkVersion="23" />

以后请咨询official Android documentation让自己了解最新的 Android API 级别。

关于android - 不针对最新版本的 Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13431722/

相关文章:

Android - 同时触摸两个按钮

android - 检查根卡住

Android getDate 返回错误的日期

wpf - 为所有控件设置 VerticalAlignment 属性

wpf - 为什么在 App.xaml 中设置 Grid.Margin 时 TextBox 会得到填充?

php - 在wordpress上将标题与缩略图分开

java - Eclipse Kepler 主题失败

java - 无法从 firebase 数据库中检索值

javascript - 内存问题 - Webkit 是否缓存元素的 CSS 样式?

android - 我可以在代码中更改 Android 样式的父项吗?