API düzeyi Android Studio'yu değiştirme


414

Android Studio'daki minimum SDK sürümünü API 12'den API 14'e değiştirmek istiyorum. Manifest dosyasında değiştirmeyi denedim, yani,

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

ve yine de Android Studio IDE'nin bazı hatalar atmasını sağlıyorum. Min SDK'yı 'proje özellikleri'nde veya benzer bir şeyde ayarlamam gerektiğini düşünüyorum, böylece IDE değişikliği tanır, ancak bunun Android Studio'da nerede yapıldığını bulamıyorum.


1
bu bazı hatalar nedir? logcat olmadan size yardımcı olamayız
Arash GM

1
Bunlar derleme hataları değildir. Xml mizanpajında ​​`` GridLayout '' kullanmaya çalıştığımda kırmızı bir alt çizgi veren IDE, yani minimum API seviyesi 14'ün gerekli olduğunu söylüyor. Bu nedenle, Android Studio'da, projeyi oluşturduktan sonra minimum API seviyesini ayarlayabileceğiniz bir yer olmalıdır. Eclipse için benzer yayınlar gördüm, ancak Android Studio için görmedim.
James B

API düzey 14 SDK paketini yüklediniz mi?
ramaral

Yeni bir proje başlatır ve en başından API seviye 14'ü seçersem, Android Studio'da geliştirme konusunda sorunum olmaz, yani API Seviye 14 SDK'sının kurulu olması gerekir. Ancak, mevcut bir projeyi API 14'ü minimum olarak kullanacak şekilde güncellemek istersem, Android Studio GUI IDE'de bunu yapmamı söylediğim yerde çalışamam.
James B

Gönderin Logcat. ve değiştirmek için MinSDKVersionu zaten denedim çok basit bir çözüm .. iechange inManifest
Mitesh Shah

Yanıtlar:


582

MinSdkVersion'ınızı var olan bir projede güncellemek istediğinizde ...

  1. Güncellemebuild.gradle(Module: app) - Gradle Script altında olduğundan emin olun ve DEĞİLDİR build.gradle(Project: yourproject) .

Build.gradle örneği:

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 düğmesini senkronize et (tüm gradle projelerini yenile de çalışır)

Android Studio'da yeni başlayanlar için "Eşitleme düğmesi düğmesi" Araçlar -> Android -> Proje'yi Eşik Dosyaları ile Eşitle "Proje yeniden oluştur" Derleme -> Proje yeniden oluştur

  1. Projeyi yeniden oluştur

Build.gradle 'ları güncelledikten sonraminSdkVersion , gradle dosyasını ("Project Gradle dosyalarıyla senkronize et") düğmesini tıklatmanız gerekir. Bu işaretleyiciyi temizleyecektir.

Güncellenmesi manifest.xml örneğin silme için, manifest dosyasında SDK seviyelere başvurular, Android Studio'da artık gerekli değildir.


7
Projemin build.gradle boş mu? Güncellenecek sözdizimi nedir? --- Hata! İki build.gradle dosyası var. Ben buldum -> src sürümleri, vb vardır
mobibob

4
Bu tavsiyeyi kullanarak, senkronize edilecek şeyler almayı başardım, ancak derlemenin hatasız olması için Android Studio'dan EXIT zorunda kaldım. Birçok küçük adım attım, bu yüzden gerçekten gerekli adımın ne olduğunu bilmiyorum.
mobibob

5
neden böyle bir top ağrısı yaptılar? güneş tutulması hatırlıyorum gibi bunu sadece bir yerde yapmak zorunda ...
Dean Wild

1
@DeanWild Android Studio'da tek bir yerde olduğu gibi. Manifest dosyasındaki API düzeylerini unutun.
Sotti

2
Android Studio'daki yeni başlayanlar için "Eşitleme düğmesi", Tools -> Android -> Sync Project with Gradle Files"Yeniden oluştur projesi" nde bulunurBuild -> Rebuild Project
CGR

169

Android stüdyosu kullanıcıları için:

  1. Uygulama dizinini sağ tıklayın
  2. "modül ayarı" seçeneğini seçin
  3. ADK Platformunu ihtiyacınız olan şekilde değiştirin
  4. Uygula'yı tıklayın

Sınıf, projeyi otomatik olarak yeniden oluşturur.


3
Yukarıdaki çözüm bana göre en iyi yol. Aracın gerekli tüm değişiklikleri yapmasına izin verin, farklı dosyalarla uğraştığınız, şeyleri vidalama veya önemli ayrıntıları unutma riskiniz var.
GeertVc

2
Bu, Studio 0.8.2'de çalışmaz. Ayarları değiştirebilir ve aplly tuşuna basabilirsiniz, ancak stüdyo bunu yok sayın. <br/> Çözüm: - Android Studio'yu kapatın - "/app/build.gradle" dosyasını düzenleyin - SDK-MinVersion girişini değiştirin - Android Studio Gradle senkronizasyonlarını otomatik olarak yeniden başlatın
Martin

Studio 1.4'te "Tatlar" sekmesine bakmanız gerekir. Priyankvex'in cevabına bakınız.
Yannick

Studio 3.5'te "Varsayılan Yapılandırma" sekmesini tıklatmanız gerekir. Tatlar sekmesi artık görünmüyor.
Toplam Yok

135

Android Studio artık kararlı olduğu için bunu yapmanın kolay bir yolu var.

  1. Proje dosyanıza sağ tıklayın
  2. "Modül Ayarlarını Aç" ı seçin
  3. "Tatlar" sekmesine gidin.

resim açıklamasını buraya girin

  1. Açılır listeden Min SDK Sürümünü seçin

Not: Bu soru zaten cevaplanmış olmasına rağmen, Android Studio kararlı sürümü ile biraz değişti. Bu nedenle, kolay ve basit bir yol, yeni bir yanıt arayan kişinin buraya inmesine yardımcı olacaktır.


1
Gradle dosyalarını düzenlemek benim için işe yaramadı, ama bu işe yaradı. Teşekkürler!
Al0x

1
Bu tekrar değişti: "Tatlar" sekmesi artık yok. Bunun yerine, 3. adımda, Proje Ayarları alanında Modüller'e tıklayın ve ardından API sürümünü seçmek için Proje Düzeyi açılır kutusunu kullanın. Bu, min API sürümünü ayarlamakla aynı şey değil, uygulamayı oluşturmak için kullanılacak sürümle aynıdır.
hamx0r

Bu kabul edilen cevap olmalı. En yeni Android Studio sürümü
Vivekanand

3
Sadece açılır listede api 23 olsun ... Ben api 10 lüzum
Reign.85

1
biraz? bu fking IDE, sürümler arasında çok fazla değişiklik yaparak eski kodun çalıştırılmasında çok fazla kesintiye neden oluyor. Microsoft tarafından örneklendirilen geriye dönük uyumluluk mirasına göre çok acıklı.
user30478

10

Android stüdyosunda kolayca basabilirsiniz:

  1. Ctrl+ Shift+ Alt+ S.
  2. android studioUygulamasının daha yeni bir sürümüne sahipseniz, önce uygulamaya basın. Ardından, aşağıdaki gibi üçüncü adıma geçin.
  3. Birçok seçenek içeren bir pencere açılacaktır
  4. Flavors'a gidin ve aslında ihtiyacınız olan her şey bu

versionCodeUygulamanızı orada da değiştirebilirsiniz .


6

Gelen build.gradledeğişim minSdkVersion 13için minSdkVersion 8Thats tüm yapmanız gereken. Sorunumu sadece bunu yaparak çözdüm.

defaultConfig {
    applicationId "com.example.sabrim.sbrtest"
    minSdkVersion 8
    targetSdkVersion 20
    versionCode 1
    versionName "1.0"
}

6

Bu cevaba göre , sadece manifest.xml dosyasına minsdkversion eklemezsiniz ve derleme sistemi build.gradle dosyasındaki değerleri kullanır ve bilgileri son apk'ye koyar.

Derleme sistemi bu bilgilere yine de ihtiyaç duyduğundan, bu mantıklıdır. Bu değerleri iki kez tanımlamanız gerekmez.

build.gradleDosyayı değiştirdikten sonra projeyi senkronize etmeniz yeterlidir, ancak Android Studio 0.5.2, size yardımcı olmak için build.gradle düzenleyici penceresinin üstünde sarı bir durum çubuğu görüntüler

Ayrıca, en az iki build.gradledosya olduğuna dikkat edin : bir ana ve bir uygulama / modül için. Değiştirilecek olan uygulama / modülde, minSdkVersionyeni oluşturulan bir projede zaten bir özellik içeriyor .


5

Temel Platform SDK'sı yerine SDK hedefini Google API'larına belirtmekte sorun yaşıyorsanız compileSdkVersion 19,compileSdkVersion "Google Inc.:Google APIs:19"


5

En son Android Studio v2.3.3 (11 Ekim 2017) için:
1. ViewMenü çubuğuna
tıklayın 2. Modül Ayarlarını
Açın 3. FlavorsSekmeyi açın
4. Sdkİhtiyacınız olan Min sürümünü seçin
IDE Proje Yapısı Penceresi 6. Tamam'a tıklayın


4

Manifest'i güncellemenin yanı sıra, modülün build.gradledosyasını da güncelleyin (manifestin hemen altındaki proje bölmesinde listelenir - içinde minSdkVersionanahtar yoksa, yanlış olana bakarsınız, çünkü bir çift var. Bir yeniden yapılanma ve işler iyi olmalı ...


3

Android stüdyosunda build.gradle dosyasını açın ve aşağıdaki bölümü düzenleyin:

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

burada minSdkVersion'ı 12'den 14'e değiştirebilirsiniz.


1

Manifestteki minSdkVersion öğesinin değiştirilmesi gerekli değildir. Gradle build dosyasında, aşağıda görüldüğü gibi değiştirirseniz, yapmanız gerekeni gerçekleştirirsiniz.

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

0

Benim için ne işe yaradı: (sağ tıklama) project-> android tools-> clear lint markers. Her ne nedenle Manifest eski (düşük) minimum API düzeyine geri döndü, ancak yeni (daha yüksek) API düzeyine geri döndükten sonra kırmızı bir hatanın altı çizildi ve proje şimdi yeni minimum API düzeyini kullanıyor.

Edit: Üzgünüz, Eclipse değil Android Studio kullandığınızı görüyorum. Ama sanırım Studio'da bir yerde benzer bir 'açık tiftik işaretleri' var ve sorunu çözebilir.


0

Gradle Scripts ->
build.gradle (Modül: app) ->
minSdkVersion (Your min sdk version)


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.