2015-12-04 15 views
5

SDK API 23 (Marshmallow) izinleriyle ilgili bazı sorunlar nedeniyle, API 21'e geri dönmek istedim, ancak bazı sorunlarla karşılaşıyorum. benzer sorunları olan çok sayıda gönderi ve (neredeyse sanırım) her şeyi denedim: Tüm SDK Build/Platform Tools'larını, API 21, Suport ve Repository Libraries için özellikleri güncelledim. Sonra projeyi temizledim, yeniden oluşturdum ve senkronize ettim. enter image description hereAndroid SDK'yı Düşürün (api 23 -> api 21)

Benim build.gradle aşağıdaki gibidir::

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 21 
    buildToolsVersion "21.1.2" 
    defaultConfig { 
     applicationId "com.example.pablo.appcontacts" 
     minSdkVersion 19 
     targetSdkVersion 21 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
    productFlavors { 
    } 
} 

dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    testCompile 'junit:junit:4.12' 
    compile 'com.jakewharton:butterknife:7.0.1' 
    compile 'com.android.support:appcompat-v7:23.1.1' 
} 

Kimsenin beni gerçekten can bu neden düzeltmek için yardımcı olabilir, bu değil çok aşina olduğum Oysa ben bu hataları alıyorum ... bir yolunu bulamadın mı?

+3

" Yeniden (Zefir) API 21'e geri dönmek istedim "- herhangi bir sorununuzu çözmeyecek. 'CompileSdkVersion', kütüphaneler, vb. [Karşılaştığınız çalışma zamanı izin problemleri] ile ilgisi yoktur (https://stackoverflow.com/questions/34095129/android-frustrating-permissions). "targetSdkVersion" işlevi var, ancak "targetSdkVersion" öğenizi 22'ye veya başka bir şeye düşürmek için uygulamanızda başka bir şey değiştirmeniz gerekmez. – CommonsWare

+0

@CommonsWare Tamam, teşekkürler, bunu bilmiyordum. –

+2

Daha fazla bilgi için, [targetSdkVersion vs compileSdkVersion blog günlüğümüze bakın] (https://medium.com/google-developers/picking-your-compilesdkversion-minsdkversion-targetsdkversion-a098a0341ebd) – ianhanniballake

cevap

4

3 Adımlar:

1 Düzen build.grade

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.1" 

    defaultConfig { 
     applicationId "com.stackoverflow.answer" 
     minSdkVersion 16 
     targetSdkVersion 21 
     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']) 
} 

2 Sync gradle düğmesi

3 projeyi nedeniyle SDK API 23 izinlerine sahip bazı sorunlara

+1

Çok hoş değil ama bence tamamen doğru değil . Ayrıca, bağımlılıklardaki depo desteğine satır eklemem gerekiyordu, aksi halde "styles.xml" dosyasındaki eksik kaynaklarla ilgili bazı hatalar görüyordum. –

+0

Ama bu PawełPoręba değişiyor android sürümü, her sürümde farklı seçenekler var. – josedlujan