设置minSdkVersion在Android Studio中不起作用

时间:2014-07-26 16:29:09

标签: android android-studio android-gradle

我有一个全新的项目,我通过新的项目向导开始,我正在尝试使用材料和Android L SDK。我将我的模拟器设置为sdk L,我的实际设备运行SDK 19.我尝试创建单独的" productFlavors" a"现代"一个用于" L"和一个" old"一个19岁,最后使用" old"一个在设备上运行,但没有工作。我终于尝试删除所有SDK" L"从我的build.gradle开始,甚至在AndroidManifest.xml中将min / target版本设置为19,但是当我尝试运行它时,设备选择器仍然以某种方式选择了" L"是minSDK。

screenshot of device chooser

我已经同步并重新同步了我的gradle构建文件,在运行运行配置之前我已经运行了干净,我甚至查看了属性文件看看我错过了某个目标。似乎仅通过使用" L" SDK将minimunTarget固定为" L"我不相信是对的。我哪里错了?

这是我的build.gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 'android-L'
    buildToolsVersion '20.0.0'
    defaultConfig {
        applicationId 'com.craig.mymaterial'
        minSdkVersion 19
        targetSdkVersion 19
        versionCode 1
        versionName '1.0'
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    productFlavors {
        modern {
//            minSdkVersion 'L'
//            targetSdkVersion 'L'
        }
        old {
            minSdkVersion 19
            targetSdkVersion 19
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    // You must install or update the Support Repository through the SDK manager to use this dependency.
    compile 'com.android.support:support-v4:19.+'
}

这是我的AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.craig.mymaterial" >

    <uses-sdk android:minSdkVersion="19" android:targetSdkVersion="19"/>
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".ItemListActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".ItemDetailActivity"
            android:label="@string/title_item_detail"
            android:parentActivityName=".ItemListActivity" >
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value=".ItemListActivity" />
        </activity>
    </application>

</manifest>

2 个答案:

答案 0 :(得分:2)

由于在Android L版本发布之前,Material Design不会得到官方支持,因此Google已将其设置为使用&#34; Android-L&#34;被锁定到该版本。

可能有一个工作,但是&#34;官方&#34;解决方案是更改编译版本以解决问题。

答案 1 :(得分:0)

您的编译版本是20,但您在模拟器中设置的版本是19.如果您将compileSdkVersion设置为19,它应该运行