5

今日、Android L Developer Preview SDK をインストールした後、アプリを Android L と Jelly Bean などの古いバージョンの両方と互換性を持たせたいと考えました。私のアプリは 16 の minSdkVersion を使用していますが、デベロッパー プレビューを試してみたので、Android Studio は私の minSdkVersion を尊重していないようです。アプリを Galaxy Nexus (API 19) で実行しようとしていますが、次のエラーが表示されます。

ここに画像の説明を入力

ここに私の AndroidManifest.xml があります

<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.simon.holocountownapp"
    android:versionCode="45"
    android:versionName="4.1.1" >

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

...

これが私のbuild.gradleです:

apply plugin: 'android'

android {
    compileSdkVersion 'android-L'
    buildToolsVersion '20'

    defaultConfig {
        minSdkVersion 16
        targetSdkVersion 'L'
    }
    buildTypes {
        release {
            runProguard true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
    productFlavors {
    }
}

dependencies {
    compile 'com.doomonafireball.betterpickers:library:1.5.2'
    compile 'uk.co.androidalliance:edgeeffectoverride:1.0.1'
    compile 'com.readystatesoftware.systembartint:systembartint:+'
    compile "com.android.support:support-v4:+"
    compile "com.android.support:support-v13:+"
}
4

3 に答える 3

4

回避策を提供する/r/AndroidDev への私の投稿を参照てください。

于 2014-06-27T05:58:28.810 に答える
1

In developer documentation says (http://developer.android.com/preview/setup-sdk.html):

On the development environment, open the build.gradle file for your module and make sure that:

  • compileSdkVersion is set to 'android-L'
  • minSdkVersion is set to 'L'
  • targetSdkVersion is set to 'L'

It seems that can't be backward compatible (right now).

于 2014-06-26T23:55:14.470 に答える