kesalahan sumber daya di studio android setelah pembaruan: Sumber Daya Tidak Ditemukan

101

Setelah pembaruan terkini untuk Android Studio, kami mengalami masalah dalam mendapatkan proyek untuk dikompilasi yang sebelumnya berfungsi. Awalnya kami mendapatkan kesalahan berikut:

/Users/james/Development/AndroidProjects/myapp/app/build/intermediates/exploded-aar/com.android.support/appcompat-v7/23.0.0/res/values-v23/values-v23.xml
Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Inverse'.
Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Button.Colored'.

Saya memperbarui target pembangunan sdk di file gradle kami menjadi 23, yang membuat masalah khusus ini hilang, tetapi meninggalkan kami dengan banyak kesalahan paket apache.http (khususnya, satu ton paket apache yang kami gunakan untuk barang http sekarang hilang di sdk 23).

Yang ingin saya lakukan adalah menyelesaikan kesalahan sumber daya yang aneh, tetapi tanpa memperbarui ke sdk 23. Saya tidak punya waktu untuk menulis ulang pustaka alat kami sekarang untuk menggunakan implementasi baru apa pun dari komponen http apache yang telah dikeluarkan. Apakah ada yang punya ide?

James Dobson
sumber
Tidakkah Anda mendapatkan error di appcompat_v7 res / values-v23 / styles.xml itu sendiri (bukan di project Anda)?
Penghiburan
1
Tidak yakin saya mengerti pertanyaan Anda? Kami mendapatkan masalah dalam file yang dihasilkan seperti yang ditunjukkan oleh jalur file dalam kesalahan yang diposting di atas.
James Dobson
Jika kesalahan terjadi pada file yang dihasilkan, maka Anda harus memperbarui alat pembangunan, dalam gradle, agar sesuai dengan versi perpustakaan. yaitu buildToolsVersion "23.0.1"
BK Batchelor

Jawaban:

78

Ubah versi appcompat di file build.gradle Anda kembali ke 22.2.1 (atau apa pun yang Anda gunakan sebelumnya).

Tunga
sumber
5
Terima kasih, inilah solusinya. Saya mengikuti petunjuk di sini: code.google.com/p/android/issues/detail?id=183122#makechanges khusus, solusi yang ditawarkan oleh scott. Saya harus menghapus 23.0.0 di folder sdk saya, menghapus versi 23 sdk di pengelola SDK dan kemudian melakukan pembersihan & rekondisi
James Dobson
4
James, terima kasih atas solusinya. Namun, saya sangat terkejut dengan situasi PITA ini - karena saya tidak pernah menginstal appcompat-v7: 22.2.1 !!
Seseorang di suatu tempat
Apakah ada cara untuk melakukannya di Eclipse?
Penghiburan
10
@Solace Eclipse tidak berguna
Back Packer
6
@BackPacker No. Android Studio adalah masalahnya. Saya memiliki komputer yang bagus dan Android Studio membutuhkan waktu lama untuk menyusun aplikasi hello world yang sederhana.
TheRealChx101
197

Anda perlu menyetel compileSdkVersion ke 23.

Karena API 23 Android menghapus paket Apache Http yang tidak digunakan lagi, jadi jika Anda menggunakannya untuk permintaan server, Anda harus menambahkan useLibrary 'org.apache.http.legacy'ke build.gradle seperti yang dinyatakan dalam tautan ini :

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.0"
    ...

    //only if you use Apache packages
    useLibrary 'org.apache.http.legacy'
}
Roberto B.
sumber
1
Ini akan bekerja tetapi Anda ingin memastikan untuk menginstal Versi SDK yang baru. API 23 (Platform Android 6.0). Ini akan memungkinkan Anda untuk mendukung perangkat yang lebih baru. Itulah mengapa saat Anda mengubah "versi appcompat" ke versi yang lebih baru, ini akan membutuhkan versi SDK yang lebih baru.
JamesDeHart
4
Jawaban ini jauh lebih baik daripada kembali ke 22.2.1
Jörn Buitink
4
Ini tentu merupakan jawaban yang ideal dan jelas merupakan tindakan yang benar bagi kebanyakan orang, namun, ini tidak menjawab pertanyaan saya yaitu menyelesaikan masalah tanpa memperbarui versi sdk. Melakukannya merusak perpustakaan yang kita andalkan tetapi tidak punya waktu untuk memperbarui pada saat itu. Kami telah memperbarui pustaka untuk memanfaatkan fitur-fitur baru dan sekarang kami dapat memperbarui dengan aman ke sdk 23.
James Dobson
@Roberto. Terima kasih, itu info yang bagus. Kami telah memperbarui basis kode kami untuk menggunakan pustaka apache baru, tetapi semoga ini akan membantu orang lain!
James Dobson
Bagaimana ini terkait dengan pesan kesalahan yang dilaporkan OP? Menurut saya compileSdkVersion adalah solusi yang valid, tetapi menggunakan pustaka apache lama hanyalah persyaratan tidak langsung.
mdelolmo
21

di file build.gradle proyek Anda ... tulis seperti di bawah ini .. saya telah mengatasi kesalahan itu dengan mengubah versi appcompat dari v7.23.0.0 ke v7.22.2.1 ..

dependencies

{

compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.2.1'

}

Tangkapan layar di bawah ini untuk pemahaman yang lebih baik.

guci
sumber
1
Tidak TIDAK Tidak .... Saya tidak mengharapkan ini! TAPI INI BERHASIL !! Lalu apa gunanya memperbaruinya menjadi 23.0.1?
sud007
Yang ini mendapatkan +1 saya: tidak selalu tepat untuk hanya memperbarui ke versi terbaru dari segala sesuatu segera setelah seseorang memberi tahu Anda. Yang ini menjawab pertanyaan asli, dan memperbaiki masalah untuk saya.
Mark Smith
10

Perhatian, jawaban yang salah datang! Tetapi siapa pun tanpa pustaka apache atau lebih mungkin menemukannya

compileSdkVersion 23
buildToolsVersion "23.0.0"



//...


dependencies {
compile 'com.android.support:appcompat-v7:23.0.0'
compile 'com.android.support:design:23.0.0'    

}

membantu, itu berhasil bagi saya.

nama pengguna
sumber
Mengapa begitu bermasalah dengan perpustakaan apache?
NinjaCoder
4

Anda harus mengubah compiledsdkversion dan targetversion ke 23 dalam file gradle build khusus untuk aplikasi. Pastikan Anda menginstal sdk 23, versi 6.0 sebelum ini. Anda dapat menonton video ini untuk bantuan lebih lanjut. https://www.youtube.com/watch?v=pw4jKsOU7go

Dinesh Sunny
sumber
2

jika Anda mendapatkan kesalahan bahkan setelah mengunduh SDK terbaru dan Android Studio Saya seorang pemula: Yang saya lakukan adalah 1. Unduh SDK terbaru (dulu) 2. Buka struktur file-Proyek (ctrl + alt + shift + S) 3. Di modul pilih aplikasi 4. Di tab properti .. ubah kompilasi versi sdk ke api 23 Android 6.0 marshmallow (terbaru)

pastikan kompilasi versi adk dan buildtools memiliki versi yang sama (23)

Semoga ini membantu seseorang sehingga dia tidak akan menderita seperti yang saya lakukan selama beberapa hari ini.

xsushil.dll
sumber
2

Cobalah untuk mencocokkan semua versi:

compileSdkVersion 23
buildToolsVersion '23.0.0'
targetSdkVersion 23
compile 'com.android.support:appcompat-v7:23.0.0'

Ini bekerja untuk saya.

Ganesh Jadhav
sumber
1

compileSDK harus cocok dengan versi appCompat. TargetSDK masih bisa 22 (misalnya jika Anda belum memperbarui ke model izin baru)

cwiesner
sumber
1

jika Anda memiliki :

/Users/james/Development/AndroidProjects/myapp/app/build/intermediates/exploded-aar/com.android.support/appcompat-v7/23.0.0/res/values-v23/values-v23.xml
Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Inverse'.
Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Button.Colored'.

kesalahan, Anda harus mengubah Anda appcompat, buildtools, sdkuntuk 23 tetapi, jika Anda tidak suka untuk mengubahnya dan harus dalam melakukan 22 melakukan ini:

  • kompilasi 23
  • target 22
Adnan Abdollah Zaki
sumber
0

Ini berfungsi hanya ketika build.grade diubah menjadi itu:

android {
    compileSdkVersion 22
    buildToolsVersion "22.0.1"

    defaultConfig {
        applicationId "blablabla"
        minSdkVersion 15
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.0.0'
}
Sanderson
sumber
0

Saya perhatikan saya tidak menginstal sdk 23. Jadi saya pertama kali menginstalnya kemudian membangun kembali proyek saya. Dan itu bekerja dengan baik. CompilesdkVersion juga harus 23

Arun Alo Chakraborty
sumber
0

Pertama-tama,

Coba periksa folder SDK Anda, bagi saya, itu adalah mydocuments / appdata / sdk .... dll. Jadi pada dasarnya folder sdk saya tidak sepenuhnya diunduh, sumber utamanya adalah masalah ini. Anda harus menggunakan sdk android lain yang telah diunduh lengkap (termasuk bagian Alat dan ekstra yang benar-benar Anda butuhkan) atau menggunakan sdk gerhana yang mungkin Anda unduh sebelumnya untuk pengembangan Android Eclipse Anda. Kemudian bangun-> bersihkan proyek Anda sekali lagi.

Layak untuk dicoba.

Adnan Bal
sumber
0

Upgrade untuk menggunakan API 23 (Android 6.0) atau ubah kembali versi appcompat-v7 ke 22.2.2 di Gradle. Ini berfungsi untuk saya ketika menambahkan layanan google play

Leo
sumber
0

Metode 1: Ditampilkan. Anda tidak menginstal Api 23. Jadi, instal API 23.

Metode 2:

Ubah versi appcompat di file build.gradle Anda kembali ke 22.0.1 (atau lebih kecil).


sumber