Android API级别 - gradle编译 - 它会运行吗?

时间:2016-02-28 10:14:49

标签: android gradle build android-api-levels

我将我的android项目中的API级别更改为build.gradle文件中的测试目的从22下降到7。

Gradle构建项目没有任何问题,它可以在我的(Android 5.1操作系统)上运行而不会出现问题。

成功构建是否表明应用程序在较低的操作系统(低至API级别7)上运行时没有问题?如果不是 - 我如何检查哪个API最适合我的应用程序?

apply plugin: 'com.android.application'

    android {
        compileSdkVersion 23
        buildToolsVersion "23.0.2"

        defaultConfig {
            applicationId "com.myapplication"
            minSdkVersion 7
            targetSdkVersion 23
            versionCode 1
            versionName "1.0"
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    }

    dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        testCompile 'junit:junit:4.12'
        compile 'com.android.support:appcompat-v7:23.2.0'
        compile 'com.android.support:design:23.2.0'
    }

1 个答案:

答案 0 :(得分:2)

Gradle工具,特别是Lint,现在很好地判断您的minSdkVersion是否真的适用于您的应用,并且当您使用API​​时通常会阻止lintVitalRelease任务中的版本构建这在您的最低SDK级别上不可用。

当然,您始终可以(并且应该)创建API级别7模拟器,并在那里测试您的应用程序。即使它没有立即崩溃,某些事情可能会表现得很奇怪/不同,或者可能根本就没有工作或可见,因为你使用的compat API调用已经在较低的API级别转换为noops。