Android Studio 中“失败 [INSTALL_FAILED_OLDER_SDK]”是什么意思?

问题描述 投票:0回答:16

我得到了这个 Froyo (2.2) 设备,我用它来制作应用程序。 当我尝试直接在设备上运行应用程序时,它显示一条错误消息

pkg: /data/local/tmp/com.example.HelloWorldProject
Failure [INSTALL_FAILED_OLDER_SDK]

在另一个窗口中出现错误提示

Unable to attach test reporter to test framework or test framework quit unexpectedly

什么似乎导致了上述错误?

编辑:

AndroidManifest.xml

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

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

    <application
            android:allowBackup="true"
            android:debuggable="true"
            android:icon="@drawable/ic_launcher"
            android:label="@string/app_name"
            >
        <activity
                android:name="com.example.HelloWorldProject.MyActivity"
                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>
android android-studio android-2.2-froyo
16个回答
33
投票

改变之后

defaultConfig {
    applicationId "com.example.bocheng.myapplication"
    minSdkVersion 15
    targetSdkVersion 'L' #change this to 19
    versionCode 1
    versionName "1.0"
}

build.gradle
文件中。

有效


30
投票

这个错误

Failure [INSTALL_FAILED_OLDER_SDK]

表示您正在尝试安装其清单中指定的

minSdkVersion
高于设备 API 级别的应用程序。将该数字更改为
8
就可以了。我不确定另一个错误,但它可能与这个错误有关。


10
投票

除了在

minSdkVersion
中检查正确的
build.gradle
之外,请确保您已安装了所有必需的
tools
并在
SDK Platform
中针对您首选的 Android 版本更正了
SDK Manager
。在 Android Studio 中,点击 Tools -> Android -> SDK Manager。然后至少安装(对于没有模拟器的Android 2.2):

  • Android SDK 工具
  • Android SDK平台-工具
  • Android SDK 构建工具(最新)
  • Android 2.2(API 8)
    • SDK平台
    • Google API

这对我有用。


4
投票

确保您的

minSdkVersion
中没有设置值高于 8 的
build.gradle
。如果您根本没有指定它,则应该使用
AndroidManfiest.xml
中的值,这似乎已经正确设置了。


3
投票

只需删除

uses-sdk
标签即可解决此类问题。


1
投票

失败[INSTALL_FAILED_OLDER_SDK]基本上意味着安装失败,因为目标位置(AVD/设备)的SDK版本比应用程序中指定的targetSdkVersion旧。

N/B Froyo 2.2 API 8

要解决此问题,只需更改

targetSdkVersion =“17”targetSdkVersion =“8”

干杯。


1
投票

确保根据您在 android studio 中的安装选择运行/调试配置是可穿戴式或移动式...


1
投票

失败[INSTALL_FAILED_OLDER_SDK]

对于 Sumsung note3 我只需编辑

AndroidManifest.xml
文件并添加以下代码:

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

0
投票

在您的清单文件中,

package
属性设置为
com.test.helloworld
,但是您的活动类位于不同的包下。将您的 MyActivity 类包更改为
com.example.helloworld


0
投票

这是因为您的手机的 sdk 版本比您的应用程序旧。!!! 这意味着你的应用程序需要 sdk 版本(假设是 Lollipop),但你的手机有版本 kitkat。


0
投票

按照以下方式修复你的 gradle 文件

defaultConfig {
    applicationId "package.com.app"
    minSdkVersion 8 //this should be lower than your device
    targetSdkVersion 21
    versionCode 1
    versionName "1.0"
}

0
投票
In android studio: reduce minSDKversion. It will work...

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"

    defaultConfig {
        applicationId "healthcare.acceliant.trianz.com.myapplication"
        minSdkVersion 11
        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'])
    compile 'com.android.support:appcompat-v7:23.1.1'
}

0
投票

我修复了这个问题。设备系统版本比sdk minSdkVersion旧。 我刚刚将 minSdkVersion 从 android_L 修改为 19 以我的 Nexus 4.4.4.

为目标
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.12.2'
    }
}
apply plugin: 'com.android.application'

repositories {
    jcenter()
}

android {
    **compileSdkVersion 'android-L'** modified to 19
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "com.antwei.uiframework.ui"
        minSdkVersion 14
        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'])
    **compile 'com.android.support:support-v4:21.+'** modified to compile 'com.android.support:support-v4:20.0.0'
}

如何通过ide修改该值。 选择 file->Project Structure -> Facets -> android-gradle 然后将编译 Sdk 版本从 android_L 修改为 19

抱歉,我没有足够的声誉来添加图片


0
投票

也许在我这样做之前转到文件>项目结构>模块并将源兼容性更改为较低版本,我已经在build.gradle中进行了更改 mindSdk 和 tragetSdk 从 31 到 30。 现在我可以毫无问题地使用模拟器了


0
投票

转到 /Gradle Scripts/build.gradle.kts 并将这些信息更改为所需的信息:

android {
    namespace = "com.example.mya"
    compileSdk = 34

    defaultConfig {
        applicationId = "com.example.mya"
        minSdk = 30
        targetSdk = 34
        versionCode = 1
        versionName = "1.0"

-1
投票

更改文件AndroidManifest.xml

<uses-sdk android:minSdkVersion="19"/>

<uses-sdk android:minSdkVersion="14"/>
© www.soinside.com 2019 - 2024. All rights reserved.