Ich bin neu in der Android-Entwicklung und möchte zuerst die Hello World
Anwendung zum Laufen bringen. Ich verwende Eclipse IDE und das Android 4.0.3 Version 15 SDK. Ich habe alles von einer Tutorial-Site kopiert, aber wenn ich versuche, die Anwendung auf dem auszuführen, virtual device
erhalte ich folgende Fehlermeldung:
[2012-02-01 11:31:23 - Android_test] Installation error: INSTALL_FAILED_OLDER_SDK
[2012-02-01 11:31:23 - Android_test] Please check logcat output for more details.
[2012-02-01 11:31:23 - Android_test] Launch canceled!
Hier ist meine Klasse im com.maze.app
Paket: package com.maze.app;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class HelloAndroid extends Activity{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
tv.setText("Hello, Android");
setContentView(tv);
}
}
und die AndroidManifest.xml
:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.maze.app"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="15" android:targetSdkVersion="@string/app_name"/>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity android:name="HelloAndroid" android:launchMode="standard" android:enabled="true"></activity>
</application>
Hier ist die Konfiguration der Virtual Device
:
Name: AndroidVD
CPU/ABI: ARM(armeabi-v7a)
Path: path\to\avd
Target: Android 4.0.3(API level 15)
Skin: WVGA800
hw.lcd.density: 240
hw.cpu.model: cortex-a8
vm.heapSize: 48
hw.ramSize:512
Was ist das Problem?
BEARBEITEN: Die Anwendung läuft nicht auf dem virtuellen Gerät: Folgendes bekomme ich auf LogCat (einige der Zeilen):
D/PackageManager(92): New package installed in /data/app/com.maze.app-2.apk
D/dalvikvm(92): GC_CONCURRENT freed 660K, 9% free 11935K/12999K, paused 18ms+72ms
I/ActivityManager(92): Force stopping package com.maze.app uid=10040
D/BackupManagerService(92): Received broadcast Intent { act=android.intent.action.PACKAGE_REPLACED dat=package:com.maze.app flg=0x10000010 (has extras) }
V/BackupManagerService(92): updatePackageParticipantsLocked: com.maze.app
android:targetSdkVersion="@string/app_name"
wird erwähnt. ist es ein Tippfehler?Antworten:
Es liegt an
android:targetSdkVersion="@string/app_name"
Ihrer manifestesten Datei.Ändern Sie es in:
Das
targetSdkVersion
sollte eine ganze Zahl sein,@string/app_name
wäre aber eine Zeichenfolge. Ich denke, das verursacht den Fehler.BEARBEITEN:
Sie müssen
intent-filter
Ihrermanifiest
Datei einen Standard für die Aktivität hinzufügen . Dann kann nur Android die Aktivität starten. Andernfalls wird der folgende Fehler in Ihrem Konsolenfenster angezeigt.Fügen Sie Ihrem
<activity>
Tag Folgendes hinzu .quelle
Hello Android
. Muss ich es irgendwie starten? Wenn ja, wie? Wenn nicht, warum funktioniert es nicht?Hello Android
Text sehen.Hello Android
.Logcat
Sie damit dasConsole
in Eclipse meinen , dann lautet die Antwort nein. Ich bekomme keine Fehler. Wenn Sie das nicht mit Logcat gemeint haben, sagen Sie mir bitte, wo ich es finden kann.Dies bedeutet, dass die Android-Version Ihres AVD älter ist als die Version, die zum Kompilieren des Codes verwendet wird
quelle
Dieser Fehler tritt auf, wenn die auf Ihrem Gerät installierte SDK-Version (reales oder virtuelles Gerät) kleiner ist als
android:minSdkVersion
in Ihrem Android-Manifest.Sie müssen entweder Ihre verringern
android:minSdkVersion
oder eine höhere API-Version für Ihre AVD angeben.Beachten Sie, dass das Verringern nicht immer trivial ist,
android:minSdkVersion
da Sie sicherstellen müssen, dass Ihre App sich um die tatsächlich installierte API kümmert und die richtigen Methoden verwendet:Die Verwendung der Android-Support-Bibliothek und / oder Bibliotheken wie Actionbar-Sherlock hilft Ihnen beim Umgang mit Widgets älterer Versionen.
quelle
Ich benutze Android Studio 0.8.1. Ich habe die Gradle-Datei eines Projekts wie folgt:
Mein Emulator war Android 4.0. Also habe ich meinen Emulator modifiziert und API Level 4.0.3 (Apilevel 15) erstellt. Es funktionierte.
quelle
Ich habe alle hier beschriebenen Antworten ausprobiert, aber meine Lösung hat sich in meiner
build.gradle
DateiminSdkVersion
von 8 auf 9 geändert, da einige Bibliotheken in meinem Projekt nicht mit API 8 funktionieren können. Dies war der Grund für die MeldungINSTALL_FAILED_OLDER_SDK
:quelle
In meinem Fall habe ich ein Projekt bearbeitet, das dies in der Datei AndroidManifest.xml enthält und das mir zur Laufzeit den oben genannten Fehler verursacht hat:
Was ich gerade getan habe, war, minSdkVersion = "17" in minSdkVersion = "16" zu ändern. Mein resultierendes Tag war:
Jetzt bekomme ich den Fehler nicht mehr ..
Hoffe das hilft
quelle
Erhielt den gleichen Fehler, das Problem war der Unterschied in der von AVD verwendeten Version des Android SDK und der Version in der AndroidManifest-Datei. Ich könnte es lösen, indem ich das korrigiere
android: minSdkVersion = "16"
mit AVD übereinstimmen.
quelle
Sie werden den gleichen Fehler sehen, wenn Sie versuchen, eine apk zu installieren, die mit erstellt wurde
Auch für Geräte mit der endgültigen Version von Android 5.0. Ändern Sie dies einfach in
quelle
Fix für neues Android 6.0 Marshmallow Das Problem wurde behoben, als ich auf API 23 (Android 6.0 Marshmallow) aktualisiert habe, indem die Build Tools-Version wie folgt auf 23.0.0 aktualisiert wurde:
Gehen Sie zu Datei> Projektstruktur , wählen Sie die Registerkarte Eigenschaften und aktualisieren Sie die Compile Sdk-Version auf "API 23: Android 5.X (MNC)" und die Build Tools-Version auf "23.0.0".
quelle
Ich bin auf Android Studio. Ich habe diesen Fehler erhalten, als min / targetSDKVersion auf 17 gesetzt wurde. Während ich diesen Thread durchgesehen habe, habe ich versucht, die minSDKVersion zu ändern, voila..problem behoben. Stelle dir das vor.. :(
quelle
Stellen Sie sicher, dass Sie Ihr build.gradle überprüfen und dass es keine neuere SDK-Version als die auf Ihrer AVD installierte verwendet. Dies ist jedoch nur möglich, wenn Sie Android Studio verwenden.
quelle
Wenn Sie wie ich völlig neu sind, müssen Sie zuerst das Mindest-SDK installieren. Überprüfen Sie den Link.
Das hat für mich perfekt geklappt:
Gleiches Problem anderer Beitrag mit einer guten Lösung
Grüße,
Khaled.
quelle
Meine Lösung bestand darin, die
module
Dropdown-Liste der Ausführungskonfigurationen vonwearable
auf zu ändernandroid.
(Dieser Fehler trat auf, als ich versuchte, die Open-Source-App I / O Sched von Google auszuführen.) Die Konfigurationen wurden jedes Mal automatisch angezeigt, wenn ich versuchte, sie auszuführen, bis ich änderte dasmodule
zuandroid
.Sie können auf die Konfigurationen zugreifen, indem Sie auf
Run
->Edit Configurations...
->General
Registerkarte -> gehenModule: [drop-down-list-here]
quelle
Ich stellte fest, dass die empfohlene Änderung im Manifest mein Problem nicht löste.
Das Update wurde im Ordner GradleScripts in der Datei build.gradle für die Module: App gefunden.
In dieser Datei (build.gradle) wurde die folgende Zeile geändert. minSdkVersion 22 Ich habe diesen Wert für '22' für mein bestimmtes Telefon in '19' geändert und den Build ohne Fehler abgeschlossen.
quelle
Kumpel, mein Rat ist, das virtuelle Gerät zu wechseln. Laden Sie die Anwendung "Genimotion" herunter, sie ist einfach zu bedienen und es gibt viele Geräte, die Sie benötigen
quelle
Gehen Sie in die
build.cradle
Datei Ihres Projekts und fügen Sie hinzu} `
Dadurch entspricht Ihre Anwendung dem Mindest-SDK, das auf Ihrem Gerät ausgeführt wird.
quelle
Ionic Android Emulator Fehler INSTALL_FAILED_OLDER_SDK
Im Grunde bedeutet dies, dass die Installation fehlgeschlagen ist, weil eine ältere SDK-Version als die in Ihrer App angegebene targetSdkVersion vorhanden ist (es handelt sich um ein Gradle-Problem). Bearbeiten Sie einfach die Datei AndroidManifest.xml und fügen Sie den folgenden Code hinzu:
Nach Tagen auf der Suche nach der Lösung, das war's.
Funktioniert gut für mich!
quelle
Wenn der Fehler "Installationsfehler: INSTALL_FAILED_OLDER_SDK" angezeigt wird, müssen Sie die Version von minSdkVersion in AndroidManifest auf die im Android-Emulator angegebene Version ändern: siehe Einstellungen -> Über das Telefon -> Android-Version.
quelle
Ich habe mich verändert meine
android:minSdkVersion
undandroid:targetSdkVersion
zu18
aus21
:Jetzt kann ich meine App erfolgreich installieren.
quelle