Ändern der API-Ebene Android Studio

414

Ich möchte die minimale SDK-Version in Android Studio von API 12 auf API 14 ändern. Ich habe versucht, sie in der Manifestdatei zu ändern, d. H.

<uses-sdk
    android:minSdkVersion="14"
    android:targetSdkVersion="18" />

und das Projekt neu zu erstellen, aber ich bekomme immer noch die Android Studio IDE, die einige Fehler auslöst. Ich gehe davon aus, dass ich das min SDK in 'Projekteigenschaften' oder ähnlichem einstellen muss, damit die IDE die Änderung erkennt, aber ich kann nicht finden, wo dies in Android Studio erfolgt.

James B.
quelle
1
Was ist das für ein Fehler? Wir können Ihnen nicht ohne Logcat helfen
Arash GM
1
Sie sind keine Kompilierungsfehler. Es ist die IDE, die eine rote Unterstreichung gibt, wenn ich versuche, "GridLayout" in der Layout-XML zu verwenden, dh mir mitteilt, dass eine Mindest-API-Stufe 14 erforderlich ist. Daher muss es irgendwo in Android Studio einen Ort geben, an dem Sie die Mindest-API-Ebene festlegen können, nachdem Sie das Projekt erstellt haben. Ich habe ähnliche Beiträge für Eclipse gesehen, aber nicht für Android Studio.
James B
Haben Sie das API Level 14 SDK-Paket installiert?
Ramaral
Wenn ich ein neues Projekt starte und von Anfang an API Level 14 auswähle, kann ich problemlos in Android Studio entwickeln, dh ich muss API Level 14 SDK installiert haben. Wenn ich jedoch einfach ein vorhandenes Projekt aktualisieren möchte, um mindestens API 14 zu verwenden, kann ich nicht herausfinden, wo in der GUI-IDE von Android Studio ich dies anweisen soll.
James B
Veröffentlichen Sie Ihre Logcat. und dies zu ändern MinSDKVersionist die einfachste Lösung, die Sie bereits versucht haben .. iechange inManifest
Mitesh Shah

Antworten:

582

Wenn Sie Ihre minSdkVersion in einem vorhandenen Projekt aktualisieren möchten ...

  1. Updatebuild.gradle(Module: app) - Stellen Sie sicher, dass es sich um das unter Gradle Script handelt und es NICHT ist build.gradle(Project: yourproject) .

Ein Beispiel für build.gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    buildToolsVersion "28.0.2"

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

dependencies {
    androidTestCompile 'junit:junit:4.12'
    compile fileTree(dir: 'libs', include: ['*.jar'])
}
  1. Gradle-Schaltfläche synchronisieren (alle Gradle-Projekte aktualisieren funktioniert auch)

Für Anfänger in Android Studio befindet sich die Schaltfläche "Gradle synchronisieren" unter Extras -> Android -> Projekt mit Gradle-Dateien synchronisieren "Projekt neu erstellen" - Erstellen - Projekt neu erstellen

  1. Projekt neu erstellen

Nach der Aktualisierung der build.gradle ist minSdkVersion, haben Sie auf den Button klicken gradle - Datei ( ‚Sync - Projekt mit Gradle Dateien‘) zu synchronisieren. Dadurch wird die Markierung gelöscht.

Das Aktualisieren von manifest.xml , z. B. zum Löschen von Verweisen auf SDK-Ebenen in der Manifestdatei, ist in Android Studio NICHT mehr erforderlich.

Sotti
quelle
7
Das build.gradle meines Projekts ist leer? Welche Syntax muss aktualisiert werden? --- Hoppla, es gibt zwei build.gradle-Dateien. Ich fand die in -> src hat die Versionen usw.
mobibob
4
Mit diesem Rat gelang es mir, die Dinge zu synchronisieren, aber ich musste Android Studio beenden, bevor die Kompilierung fehlerfrei war. Ich habe viele kleine Schritte ausgeführt, daher weiß ich nicht, was wirklich der notwendige Schritt war.
Mobibob
5
Warum haben sie es so zu einem Ballschmerz gemacht? Ich erinnere mich an eine Sonnenfinsternis. Ich musste dies nur an einem Ort tun ...
Dean Wild
1
@ DeanWild In Android Studio ist auch an einem Ort. Vergessen Sie die API-Ebenen in der Manifestdatei.
Sotti
2
Für Anfänger in Android Studio befindet sich "Sync Gradle Button" in Tools -> Android -> Sync Project with Gradle Files"Projekt neu erstellen"Build -> Rebuild Project
CGR
169

Für Android Studio Benutzer:

  1. Klicken Sie mit der rechten Maustaste auf das App-Verzeichnis
  2. Wählen Sie die Option "Moduleinstellung"
  3. Ändern Sie die ADK-Plattform nach Bedarf
  4. Klicken Sie auf Übernehmen

Der Gradle erstellt das Projekt automatisch neu.

user3291001
quelle
3
Die oben angegebene Lösung ist für mich der beste Weg. Lassen Sie das Tool alle notwendigen Änderungen vornehmen, damit Sie selbst an verschiedenen Dateien herumspielen, das Risiko eingehen, Dinge zu verschrauben oder wichtige Details zu vergessen.
GeertVc
2
Dies funktioniert in Studio 0.8.2 nicht. Sie können die Einstellungen ändern und auf "Anwenden" klicken, aber Studio ignoriert dies. <br/> Lösung: - Schließen Sie Android Studio - Bearbeiten Sie "/app/build.gradle" - Ändern Sie den SDK-MinVersion-Eintrag - Starten Sie die Synchronisierung von Android Studio Gradle automatisch neu
Martin
In Studio 1.4 müssen Sie auf der Registerkarte "Flavours" nachsehen. Siehe die Antwort von priyankvex.
Yannick
In Studio 3.5 müssen Sie auf die Registerkarte "Standardkonfiguration" klicken. Die Registerkarte "Aromen" scheint nicht mehr zu existieren.
Summe keine
135

Da Android Studio jetzt stabil ist, gibt es eine einfache Möglichkeit, dies zu tun.

  1. Klicken Sie mit der rechten Maustaste auf Ihre Projektdatei
  2. Wählen Sie "Moduleinstellungen öffnen"
  3. Gehen Sie zur Registerkarte "Aromen".

Geben Sie hier die Bildbeschreibung ein

  1. Wählen Sie die Min SDK-Version aus der Dropdown-Liste

PS: Obwohl diese Frage bereits beantwortet wurde, hat sich Android Studio durch seine stabile Version ein wenig verändert. Ein einfacher und unkomplizierter Weg hilft jedem neuen Antwortsuchenden, hier zu landen.

priyankvex
quelle
1
Das Bearbeiten der Gradle-Dateien hat bei mir nicht funktioniert, aber das hat funktioniert. Vielen Dank!
Al0x
1
Dies hat sich erneut geändert: Die Registerkarte "Aromen" ist nicht mehr vorhanden. Klicken Sie stattdessen in Schritt 3 im Bereich Projekteinstellungen auf Module und wählen Sie dann im Dropdown-Feld Projektebene die API-Version aus. Dies ist nicht dasselbe wie das Festlegen der min-API-Version, sondern die Version, die zum Erstellen der App verwendet wird.
Hamx0r
Dies muss die akzeptierte Antwort sein. Am wenigsten die neuere Version von Android Studio
Vivekanand
3
Ich bekomme nur API 23 in der Dropdown-Liste ... Ich brauche API 10
Reign.85
1
ein kleines bisschen? Diese fking IDE ändert sich stark zwischen den Versionen, was zu vielen Unterbrechungen beim Ausführen von altem Code führt. Sehr, sehr erbärmlich im Vergleich zu dem Erbe der Abwärtskompatibilität, das von Microsoft veranschaulicht wird.
user30478
10

In Android Studio können Sie einfach drücken:

  1. Ctrl+ Shift+ Alt+ S.
  2. Wenn Sie eine neuere Version von haben android studio, drücken Sie zuerst auf App. Fahren Sie dann mit Schritt drei wie folgt fort.
  3. Ein Fenster mit einer Reihe von Optionen wird geöffnet
  4. Gehen Sie zu Flavours und das ist eigentlich alles, was Sie brauchen

Dort können Sie auch die versionCodeApp ändern .

Salah Klein
quelle
6

Im build.gradleWechsel minSdkVersion 13zu Das ist minSdkVersion 8alles, was Sie tun müssen. Ich habe mein Problem nur dadurch gelöst.

defaultConfig {
    applicationId "com.example.sabrim.sbrtest"
    minSdkVersion 8
    targetSdkVersion 20
    versionCode 1
    versionName "1.0"
}
Sabri Meviş
quelle
6

Nach dieser Antwort fügen Sie minsdkversion einfach nicht in die manifest.xml ein, und das Build-System verwendet die Werte aus der Datei build.gradle und fügt die Informationen in die endgültige apk ein.

Da das Build-System diese Informationen ohnehin benötigt, ist dies sinnvoll. Sie sollten diese Werte nicht zweimal definieren müssen.

Sie müssen das Projekt nur nach dem Ändern der build.gradleDatei synchronisieren , aber Android Studio 0.5.2 zeigt eine gelbe Statusleiste über dem Fenster des build.gradle-Editors an, um Ihnen zu helfen

Beachten Sie auch mindestens zwei build.gradleDateien: eine Master- und eine für die App / das Modul. Die zu ändernde befindet sich in der App / im Modul und enthält bereits eine Eigenschaft minSdkVersionin einem neu generierten Projekt.

Meier
quelle
5

Wenn Sie Probleme haben, das SDK-Ziel für Google APIs anstelle des Basisplattform-SDK anzugeben, ändern Sie einfach das compileSdkVersion 19incompileSdkVersion "Google Inc.:Google APIs:19"

Juan Reyes
quelle
5

Für das neueste Android Studio v2.3.3 (11. Oktober 2017):
1. Klicken Sie Viewauf die Menüleiste.
2. Klicken Sie auf Moduleinstellungen öffnen.
3. Öffnen Sie die FlavorsRegisterkarte.
4. Wählen SdkSie die gewünschte Mindestversion.
IDE-Projektstrukturfenster 6. Klicken Sie auf OK

Rido
quelle
4

Aktualisieren Sie nicht nur das Manifest, build.gradlesondern auch die Datei des Moduls (sie befindet sich im Projektbereich direkt unter dem Manifest - wenn kein minSdkVersionSchlüssel darin enthalten ist, sehen Sie sich den falschen an, da es ein paar gibt). Ein Umbau und alles sollte gut gehen ...

Chris Rolliston
quelle
3

Öffnen Sie in Android Studio build.gradle und bearbeiten Sie den folgenden Abschnitt:

defaultConfig {
    applicationId "com.demo.myanswer"
    minSdkVersion 14
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
}

Hier können Sie minSdkVersion von 12 auf 14 ändern

Dharmendra Pratap
quelle
1

Das Ändern der minSdkVersion im Manifest ist nicht erforderlich. Wenn Sie es in der Gradle-Build-Datei ändern (siehe unten), erreichen Sie das, was Sie tun müssen.

defaultConfig {
   applicationId "com.demo.myanswer"
   minSdkVersion 14
   targetSdkVersion 23
   versionCode 1
   versionName "1.0"
}
Chris Deck
quelle
0

Für mich hat funktioniert: (Rechtsklick) Projekt-> Android-Tools-> Flusenmarkierungen entfernen. Aus irgendeinem Grund wurde das Manifest zwar auf die alte (niedrigere) Mindest-API-Ebene zurückgesetzt, aber nachdem ich es wieder auf die neue (höhere) API-Ebene geändert hatte, wurde kein roter Fehler unterstrichen und das Projekt verwendet jetzt die neue Mindest-API-Ebene.

Bearbeiten: Entschuldigung, ich sehe, dass Sie Android Studio verwendet haben, nicht Eclipse. Aber ich denke, irgendwo in Studio gibt es ähnliche "klare Flusenmarkierungen", die das Problem möglicherweise lösen.

Jamppa
quelle
0

Gradle-Skripte ->
build.gradle (Modul: App) ->
minSdkVersion (Your min sdk version)

Hubert Hubert
quelle
0

Datei> Projektstruktur> Module können Sie von dort aus ändern

Wisam Atil
quelle