# INSTALL_FAILED_OLDER_SDK - Was muß ich tun damit der Fehler verschwindet



## marlem (29. Apr 2020)

Hallo,

eigentlich habe ich gedacht ich bin kurz vor dem Ziel, ABER dieser Weg wird kein leichter sein, dieser Weg ist steinig und schwer ...
Android Studio 3.6.3. 

Ich habe folgende Fehlermeldung:


> Failed to commit install session 2073051529 with command cmd package install-commit 2073051529. Error: INSTALL_FAILED_OLDER_SDK: Failed parse during installPackageLI: /data/app/vmdl2073051529.tmp/base.apk (at Binary XML file line #7): Requires newer sdk version #28 (current version is #26)
> 
> 20:58    Session 'app': Installation did not succeed.
> The application could not be installed: INSTALL_FAILED_OLDER_SDK
> Retry



Was muß ich tun, damit der Fehler verschwindet?


----------



## kneitzel (29. Apr 2020)

Wann bekommst Du diesen genau?

Was man da etwas sieht: er meint, dass du derzeit Version 26 des SDKs installiert hast, aber er will die Version 28.

Im SDK Manager kann man entsprechende Versionen installieren und deinstallieren. 26 ist von Android 8.0 (oreo), 28 ist Android 90 (Pie). Aktuell wäre 29 - Android 19.0 (Q).

Wichtig sind natürlich auch die passenden SDK Tools (Im SDK Manager der zweite Tab)

Das wird aber auch viel im Projekt festgelegt. build.gradle vom Modul hat:
compileSdkVersion 29
buildToolsVersion "29.0.3"
==> Die müssen auf jeden Fall passen!

Desweiteren gibt es da auch noch die targetSdkVersion - Ich bin jetzt nicht der Android Experte (da können andere mehr zu sagen), aber ich halte die targetSdkVersion immer gleich zu der installierten Version. Das muss aber wohl nicht der Fall sein (macht aber wohl wenig Sinn, so wie ich die Werte verstanden habe ...)


----------



## marlem (29. Apr 2020)

> Wann bekommst Du diesen genau?


Ich habe ein Testprojekt erstellt und wollte das starten über den "Run"-Schalter.



> Was man da etwas sieht: er meint, dass du derzeit Version 26 des SDKs installiert hast, aber er will die Version 28.


Ich habe sdk 26,27,28 und 29 installiert.



> Wichtig sind natürlich auch die passenden SDK Tools (Im SDK Manager der zweite Tab)


Stöhn, davon habe ich noch überhaupt kein Schimmer!




> Desweiteren gibt es da auch noch die targetSdkVersion


Darum habe ich mich bisher auch noch nicht gekümmert ....

Gut, ich werde wohl morgen nochmal den ganzen Tag brauchen, bis ich es behersche.

Was mich ärgert:
Ich habe ein Buch gekauft von Uwe Post und mit diesem Buch kann ich kein einziges Problem lösen!


----------



## kneitzel (29. Apr 2020)

Ganz ruhig, wir gehen da Schritt für Schritt durch.

Was mich wundert: Du hast eine recht frische Installation von Android Studio - da sollte das Erzeugen eines neuen Projektes und dann das Ausführen eigentlich klappen. Aber wenn Du mehrere SDKs installiert hast, dann hast Du da evtl. etwas zerhauen.

Zeig uns doch bitte einmal die Werte in Deinem gradle.build.
Und schau einmal genau im SDK Manager nach (Im Menu: Tools -> SDK Manager)
Du hast da auf der rechten Seite drei Tabs: SDK Platforms, SDK Tools und SDK Update Sites
- Was ist bei SDK Platforms alles angehakt? Wirklich 26-29 alle? (Das könntest Du ändern. Ich habe nur die 29 drin)
- Was ist beim SDK Tools Tab zu sehen?
==> Hier werden keine Versionen angezeigt wenn man den Tab öffnet. Unten findet sich eine Checkbox: "Show Package Details" - da den Haken rein setzen! Dann sieht man bei jedem Paket die Versionen!
==> Ich sehe dann bei Android SDk Build-Tools, dass Version 29.0.3 installiert ist.

Da bitte einmal die Informationen liefern. Evtl. auch einfach einmal versuchen, alles anzupassen. Im ersten Schritt würde ich den Code so lassen, wie er ist und dann lediglich ggf. SDK und SDK Tools in der Version installieren, die im gradle.build angegeben sind.


----------



## marlem (29. Apr 2020)

> Zeig uns doch bitte einmal die Werte in Deinem gradle.build.



Ich hoffe das ist das was du meinst:
Executing tasks: [:app:assembleDebug] in project C:\Projekte\Android\MarkusTestet

> Task :appreBuild UP-TO-DATE
> Task :appreDebugBuild UP-TO-DATE
> Task :app:generateDebugBuildConfig UP-TO-DATE
> Task :app:javaPreCompileDebug UP-TO-DATE
> Task :app:compileDebugAidl NO-SOURCE
> Task :app:compileDebugRenderscript NO-SOURCE
> Task :app:mainApkListPersistenceDebug UP-TO-DATE
> Task :app:generateDebugResValues UP-TO-DATE
> Task :app:generateDebugResources UP-TO-DATE
> Task :app:mergeDebugResources UP-TO-DATE
> Task :app:createDebugCompatibleScreenManifests UP-TO-DATE
> Task :app:extractDeepLinksDebug UP-TO-DATE
> Task :approcessDebugManifest UP-TO-DATE
> Task :approcessDebugResources
> Task :app:compileDebugJavaWithJavac UP-TO-DATE
> Task :app:compileDebugSources UP-TO-DATE
> Task :app:mergeDebugShaders UP-TO-DATE
> Task :app:compileDebugShaders UP-TO-DATE
> Task :app:generateDebugAssets UP-TO-DATE
> Task :app:mergeDebugAssets UP-TO-DATE
> Task :approcessDebugJavaRes NO-SOURCE
> Task :app:mergeDebugJavaResource UP-TO-DATE
> Task :app:checkDebugDuplicateClasses UP-TO-DATE
> Task :app:mergeLibDexDebug UP-TO-DATE
> Task :app:mergeExtDexDebug UP-TO-DATE
> Task :app:dexBuilderDebug UP-TO-DATE
> Task :app:mergeProjectDexDebug UP-TO-DATE
> Task :app:mergeDebugJniLibFolders UP-TO-DATE
> Task :app:mergeDebugNativeLibs UP-TO-DATE
> Task :app:stripDebugDebugSymbols UP-TO-DATE
> Task :app:validateSigningDebug UP-TO-DATE
> Task :appackageDebug UP-TO-DATE
> Task :app:assembleDebug UP-TO-DATE

BUILD SUCCESSFUL in 17s
24 actionable tasks: 1 executed, 23 up-to-date




> Was ist bei SDK Platforms alles angehakt? Wirklich 26-29 alle? (Das könntest Du ändern. Ich habe nur die 29 drin)


Habe 26-28 abgehakt und deinstalliert.



> Was ist beim SDK Tools Tab zu sehen?


----------



## kneitzel (29. Apr 2020)

Die build.gradle Datei würde mich interessieren. Und bei dem Bildschirmfoto hast Du unten rechts noch das Kästchen "Show Package Details".

Die build.gradle Datei findest Du im Projekt-Fenster unter Gradle-Scripts. Da gibt es sogar 2: Einmal für das Projekt und einmal für das Modul. Mich interessiert die für das Modul.


----------



## marlem (29. Apr 2020)

> Die build.gradle Datei würde mich interessieren.



apply plugin: 'com.android.application'

android {
    compileSdkVersion 29
    buildToolsVersion "29.0.3"

    defaultConfig {
        applicationId "com.example.markustestet"
        minSdkVersion 28
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }

}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])

    implementation 'androidx.appcompat:appcompat:1.1.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test.ext:junit:1.1.1'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
}


----------



## marlem (29. Apr 2020)

> Und bei dem Bildschirmfoto hast Du unten rechts noch das Kästchen "Show Package Details".


----------



## marlem (11. Mai 2020)

Also, ich hatte, warum auch immer, Lockdateien in einem Verzeichnis, die habe ich gelöscht.
Dann habe ich eine Meldung bekommen ich soll Android Studio aktualisieren.
Das habe ich gemacht. 
Es wurde auch Gradle aktualisiert.

Jetzt Startet mein Projekt "BasicAndroidAccessibility" wieder! *freu*

Aber irgendwie habe ich noch nicht das Gefühl das ich Android Studio verstanden habe.
Trotz Buch von Uwe Post und Udemy-Kurs.


----------

