0

我正在学习谷歌最近推出的材料设计。我正在使用 Android Studio 编写我的应用程序代码。

当我构建项目时,它不会在我的代码中显示任何错误,但最后我每次都会收到相同的错误消息。

失败 [INSTALL_FAILED_OLDER_SDK]

我在 stackoverflow Failure [INSTALL_FAILED_OLDER_SDK] Android-L上看到了很多线程,但这并没有回答我的问题。

我正在 Android 4.4.4 上测试一个应用程序。我不想针对 API 19 编译项目。我也想拥有我的应用程序的材料主题,我想使用 Android L 中添加的新 api。

这怎么可能针对较低的 android 版本针对 Android L 编译项目?

构建.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 'android-L'
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "multipanelayout.example.com.multipanelayoutdemo"
        minSdkVersion 15
        targetSdkVersion 'L'
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

值-styles.xml

<resources>

    <!-- Base application theme. -->
    <style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar">
        <!-- Customize your theme here. -->
    </style>

</resources>

值 21 -styles.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="AppTheme" parent="android:Theme.Material.Light">
    </style>
</resources>

提前致谢。

4

1 回答 1

0

正如其他 SO 答案和http://developer.android.com/preview/setup-sdk.html的官方文档中所解释的那样。

你必须使用:

minSdkVersion 'L'

在您的设备中,您必须在具有 Android-L 的设备或具有 Android-L模拟器build.gradle中运行该应用程序。

您正在使用minSdkVersion 15,这是您出错的原因。

这不是错误,但这是因为这些 API 不是最终的。这是一种防止在最终 API 21 上安装应用程序的方法。

材质主题,目前仅适用于 api>=21(并且您正在使用 values-v21 文件夹),因此较低的 android 版本将继续使用 Holo 主题运行。

测试它的最佳方法(没有变通方法)是使用2 种不同的风格,使用 api-19 和 4.4.x 设备以及 api-21 和 android-L 设备测试您的应用程序。

于 2014-09-14T11:17:51.413 回答