Eclipse memberi saya kesalahan di baris android: configChanges di AndroidManifest.xml saya:
<activity android:name="com.google.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"></activity>
kesalahannya adalah:
error: Error: String types not allowed (at 'configChanges' with value 'keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize').
Jika saya hanya meninggalkan keyboard|keyboardHidden|orientation
tidak ada kesalahan, tetapi kompiler meminta 4 yang tersisa ketika saya mencoba dan membangun.
Saya menggunakan GoogleAdMobAdsSDK-4.3.1
.
Ada ide?
EDIT: Saya membuatnya bekerja dengan mengubah project.properties saya ( default.properties pada SDK yang lebih rendah dari 14) file ke:
# Project target.
target=android-14
dan di SDK Manager saya memiliki SDK Platform Android 4.0 - Revisi 14 diinstal.
Ini juga harus bekerja untuk SDK Platform android 3.2 - revisi 13 , jadi Anda hanya perlu mengubah target project.properties menjadi android-13 jika itu masalahnya. Pada dasarnya Anda hanya perlu memastikan bahwa revisi SDK adalah 13 atau di atas, dan bahwa Anda memiliki SDK yang diinstal pada manajer SDK dan target proyek secara default / project.properti menunjuk ke sana.
Jawaban:
Jawaban sederhana: perubahan konfigurasi yang disebutkan tidak mendukung di Android 2.1, lihat di sini:
http://developer.android.com/guide/topics/manifest/activity-element.html#config
mis. uiMode membutuhkan API Level 8.
Dari Dokumentasi AdMob resmi:
Persyaratan
Google AdMob Ads SDK untuk Android membutuhkan Android 1.5 atau lebih baru. Pastikan Anda memiliki salinan Android SDK terbaru dan Anda mengkompilasi terhadap setidaknya Android v3.2 (tetapkan target di default.properties ke android-13).
lihat di sini: https://developers.google.com/admob/android/quick-start
Jadi saya pikir versi alat Anda tidak diperbarui ke setidaknya Versi 13.
sumber
<uses-sdk android:minSdkVersion="7"/>
ke versi 8, 9, 10, 11, 12 ... masih memiliki kesalahan ... juga mencoba menghapus garis dan masih memberi saya kesalahan.The android:configChanges value of the com.google.ads.AdActivity must include screenLayout. The android:configChanges value of the com.google.ads.AdActivity must include uiMode. The android:configChanges value of the com.google.ads.AdActivity must include screenSize. The android:configChanges value of the com.google.ads.AdActivity must include smallestScreenSize. You must have AdActivity declared in AndroidManifest.xml with configChanges.
Dan di mana iklan itu dimaksudkan, saya mendapatkan kotak hitam dengan pesan kesalahan terakhir yang ditulis dengan warna merah di dalamnya.Unable to resolve target 'android-13'
. Saya memiliki "Android SDK Tools, revisi 13" yang terpasang di manajer SDK saya ...Solusi mudah: (dan TIDAK Anda tidak perlu mengubah nilai min-sdk !!)
Langkah 1: Ubah file "project.properties"
Langkah 2: Di Eclipse
Untuk penjelasan lengkap dengan contoh nyata, gunakan tutorial ini http://www.monkeycoder.co.nz/Community/posts.php?topic=1121
Bersulang !
sumber
Bagi mereka yang menggunakan Eclipse ada cara yang lebih mudah: Klik kanan folder proyek Anda di sebelah kiri "Package Explorer" dan klik Properties -> Android -> dan di daftar "Project Build Target" centang API 13 atau lebih tinggi.
Catatan: ini adalah efek yang sama dengan pengeditan
project.properties
yang dibuat secara otomatis.Ini akan membangun proyek Anda terhadap Android 3.2 SDK yang mencakup persyaratan yang sebelumnya tidak dikenali.
Anda dapat membiarkan
android:minSdkVersion
dantargetSdkVersion
menghargai nilai yang sama di Manifest.xml Anda.Berhati-hatilah , jika Anda tidak menyetel
targetSdkVersion
ke API 12 atau lebih rendah (atau tidak menyetelnya sama sekali) sistem Android akan menganggap bahwaandroid:configChanges
nilai - nilaiscreenSize
dansmallestScreenSize
(yang diperkenalkan dalam API 13) diperhitungkan dan dengan demikian akan menjadi diizinkan untuk menghancurkan-memulai kembali aktivitas Anda. Jika Anda ingin menghindari ini, Anda harus memasukkan istilah-istilah itu dalam<activity>
tag Anda yang lain (yang mungkin hanya dimilikikeyboard|keyboardHidden|orientation
sampai sekarang).Kutipan dari sini .
sumber
Saya memiliki masalah yang sama jadi saya datang ke sini.
Saya telah mengunduh kode sampel dari https://developers.google.com/admob/android/quick-start , saya masih memiliki masalah dengan semua jawaban di atas sehingga saya menggunakan sdk admob yang sama, yang mereka tawarkan di proyek sampel. Ulangi pembuatan toples, ubah target menjadi
android-15
, dan gunakan baris yang sama yang mereka gunakan:Dan itu berhasil!
sumber
Apakah kamu menggunakan
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize
atau lebih pendek? Jika Anda mengubah target Anda di atas 13 dan menggunakan konfigurasi yang lebih lama (yang saya tulis), itu akan berhasil.
sumber
Solusi mudah: Ubah file "project.properties" menjadi 21
sumber
sumber