अद्यतन के बाद एंड्रॉइड स्टूडियो में संसाधन त्रुटि: कोई संसाधन नहीं मिला


101

एंड्रॉइड स्टूडियो के हालिया अपडेट के बाद, हमें पहले से काम करने के लिए प्रोजेक्ट करने में समस्या आ रही है। पहले हमें निम्न त्रुटि मिल रही थी:

/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'.

मैंने 23 में अपनी ग्रेडल फाइल में sdk बिल्ड टारगेट को अपडेट किया, जिसने इस विशिष्ट मुद्दे को दूर कर दिया, लेकिन इसने हमें एक टन apache.http पैकेज त्रुटियों के साथ छोड़ दिया (विशेष रूप से, अपाचे पैकेजों का एक टन जिसे हमने http सामान के लिए उपयोग किया है) में sdk 23)।

मैं जो करना चाहता हूं वह अजीब संसाधन त्रुटि को हल करना है, लेकिन 23 को अपडेट किए बिना। मेरे पास अपाचे http घटकों को जारी करने के लिए जो भी नए कार्यान्वयन का उपयोग करने के लिए अभी हमारे टूल लाइब्रेरी को फिर से लिखने का समय नहीं है। क्या किसी के पास कोई विचार है?


क्या आपको appcompat_v7 res / values-v23 / styles.xml में त्रुटि (अपने प्रोजेक्ट के बजाय) नहीं मिलती है?
सोलस

1
यकीन नहीं होता कि मैं आपका सवाल समझ गया हूँ? हम एक उत्पन्न फ़ाइल में समस्या प्राप्त कर रहे थे जैसा कि ऊपर पोस्ट की गई त्रुटि में फ़ाइल पथ द्वारा इंगित किया गया है।
जेम्स डॉब्सन

यदि उत्पन्न फ़ाइलों में त्रुटि हो रही है, तो आपको लायब्रेरी संस्करण से मिलान करने के लिए, निर्माण उपकरण अद्यतन करना होगा। यानी बिल्डटूलवर्जन "23.0.1"
बीके

जवाबों:


78

अपने build.gradle फ़ाइल में appcompat संस्करण को 22.2.1 (या जो भी आप पहले उपयोग कर रहे थे) में बदलें।


5
धन्यवाद, यह समाधान था। मैंने यहां निर्देशों का पालन किया है: code.google.com/p/android/issues/detail?id=183122#makechanges विशेष रूप से, स्कॉट द्वारा प्रस्तुत समाधान। मुझे अपने एसडीके फ़ोल्डर में 23.0.0 को हटाना था, एसडीके प्रबंधक में संस्करण 23 एसडीके को हटाना और फिर एक साफ और पुनर्निर्माण करना
जेम्स डॉबसन

4
जेम्स, समाधान के लिए धन्यवाद। हालाँकि, मैं इस पीआईटीए स्थिति में सिर्फ खूनी आश्चर्यचकित हूं - क्योंकि मेरे पास ऐप्पोमैट-वी 7 कभी नहीं था: 22.2.1 स्थापित !!
किसी ने 5

क्या ग्रहण में ऐसा करने का कोई तरीका है?
सोलैस

10
@ शोले का ग्रहण बेकार है
बैक पैकर

6
@BackPacker No. एंड्रॉइड स्टूडियो समस्या है। मेरे पास एक अच्छा कंप्यूटर है और एंड्रॉइड स्टूडियो हमेशा के लिए एक साधारण हैलो वर्ल्ड ऐप संकलित करता है।
TheRealChx101

197

आपको 23 पर compileSdkVersion सेट करने की आवश्यकता है।

चूंकि एपीआई 23 एंड्रॉइड useLibrary 'org.apache.http.legacy'ने अपग्रेड किए गए अपाचे एचटीपी पैकेजों को हटा दिया है, इसलिए यदि आप उन्हें सर्वर अनुरोधों के लिए उपयोग करते हैं, तो आपको build.gradle को इस लिंक में बताए अनुसार जोड़ना होगा:

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.0"
    ...

    //only if you use Apache packages
    useLibrary 'org.apache.http.legacy'
}

1
यह काम करेगा लेकिन आप नए एसडीके संस्करण को स्थापित करना सुनिश्चित करना चाहेंगे। एपीआई 23 (एंड्रॉइड 6.0 प्लेटफार्म)। यह आपको नए उपकरणों का समर्थन करने की अनुमति देगा। इसीलिए जब आप "appcompat संस्करण" को नए संस्करण में बदलते हैं तो इसके लिए नए SDK संस्करण की आवश्यकता होगी।
जेम्सडेर्ट

4
यह उत्तर 22.2.1 पर वापस जाने की तुलना में बहुत बेहतर है
जोर्न बुइटिंक

4
यह निश्चित रूप से एक आदर्श उत्तर है और स्पष्ट रूप से अधिकांश लोगों के लिए कार्रवाई का सही पाठ्यक्रम है, हालांकि, यह मेरे सवाल का जवाब नहीं देता है जो कि एसडीके संस्करण को अपडेट किए बिना समस्या को हल करना था। ऐसा करने से एक पुस्तकालय टूट जाता है जिस पर हम निर्भर होते हैं लेकिन उस समय अद्यतन करने के लिए समय नहीं था। हमने नई सुविधाओं का उपयोग करने के लिए लाइब्रेरी को अपडेट किया है और हम अब सुरक्षित रूप से 23 को अपडेट कर सकते हैं।
जेम्स डॉबसन

@RobertoB। धन्यवाद, अच्छी जानकारी है। हमने पहले ही नए अपाचे पुस्तकालयों का उपयोग करने के लिए अपना कोडबेस अपडेट कर दिया है, लेकिन उम्मीद है कि यह दूसरों की मदद करेगा!
जेम्स डॉबसन

यह ओपी रिपोर्ट में त्रुटि संदेशों से संबंधित कैसे है? मुझे लगता है कि compileSdkVersion एक वैध वर्कअराउंड है, लेकिन विरासत एपाचे लाइब्रेरी का उपयोग केवल एक अप्रत्यक्ष आवश्यकता है।
mdelolmo

21

अपनी परियोजनाओं में build.gradle फ़ाइल ... नीचे के रूप में लिखें .. मैंने v7.23.0.0 से v7.22.2.1 तक appcompat संस्करण को बदलकर उस त्रुटि को हल किया है।

dependencies

{

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

}

नीचे स्क्रीन शॉट बेहतर समझ के लिए है।


1
नहीं, नहीं .... मैं यह उम्मीद नहीं कर रहा था! लेकिन यह काम किया !! 23.0.1 तक इसे अपडेट करने की बात क्या है?
सूद 7००

यह एक मेरी +1 हो जाता है: यह हमेशा हर चीज के नवीनतम संस्करण को अपडेट करने के लिए हमेशा उपयुक्त नहीं होता है जो कोई व्यक्ति आपको बताता है। यह एक मूल प्रश्न का उत्तर देता है, और मेरे लिए समस्या को ठीक करता है।
मार्क स्मिथ

10

ध्यान, गलत उत्तर आ रहा है! लेकिन अपाचे पुस्तकालयों के बिना या तो किसी को भी मिल सकता है

compileSdkVersion 23
buildToolsVersion "23.0.0"



//...


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

}

उपयोगी, यह मेरे लिए चाल चली।


अपाचे पुस्तकालयों के साथ यह समस्या क्यों है?
निंजाकोडर

4

आपको अपने संकलित फ़ाइल को बदलने के लिए और बिल्ड अपग्रेड करने के लिए targetversion को 23 में बदलना चाहिए, जो ऐप के लिए विशिष्ट है। सुनिश्चित करें कि आपने इससे पहले sdk 23, संस्करण 6.0 स्थापित किया था। आप इस vid को अधिक सहायता के लिए देख सकते हैं। https://www.youtube.com/watch?v=pw4jKsOU7go


2

अगर u को नवीनतम SDK और Android Studio डाउनलोड करने के बाद भी त्रुटियां हो रही हैं, तो मैं एक नौसिखिया हूं: मैंने जो किया वह था 1. हाल का SDK (i) 2.Open फ़ाइल-प्रोजेक्ट संरचना (ctrl + alt + shift + S) 3 डाउनलोड करें। मॉड्यूल में एप्लिकेशन का चयन करें 4. गुण टैब में .. 23 एंड्रॉइड 6.0 मार्शमॉलो (नवीनतम) के लिए sdk संस्करण संकलन करें।

सुनिश्चित करें कि संकलित एडीके संस्करण संस्करण बिल्डटूल एक ही संस्करण के हैं (23)

आशा है कि यह किसी की मदद करता है ताकि वह इस तरह से पीड़ित न हो जैसे मैंने इन दो दिनों के लिए किया था।


2

सभी संस्करण से मिलान करने का प्रयास करें:

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

यह मेरे लिए काम है।


1

compileSDK को appCompat संस्करण से मेल खाना चाहिए। TargetSDK अभी भी 22 हो सकता है (उदाहरण के लिए यदि आपने नए अनुमति मॉडल को अभी तक अपडेट नहीं किया है)


1

यदि आपके पास है :

/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'.

त्रुटि, आप अपने में परिवर्तन करना होगा appcompat, buildtools, sdkके लिए 23 लेकिन, यदि आप नहीं इसे बदलने के लिए की तरह है और में होना चाहिए कर 22 ऐसा करते हैं:

  • संकलन २३
  • लक्ष्य २२

0

यह तभी काम करता है जब build.grad उसको बदल दिया गया था:

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'
}

0

मैंने देखा कि मैंने 23 एसडीके स्थापित नहीं किया था। इसलिए मैंने पहले इसे स्थापित किया फिर अपनी परियोजना का निर्माण किया। और यह ठीक काम किया। इसके अलावा compilesdkVersion 23 होना चाहिए


0

सबसे पहले,

अपने एसडीके फ़ोल्डर की जांच करने का प्रयास करें, मेरे लिए, यह mydocuments / appdata / sdk .... आदि था। इसलिए मूल रूप से मेरा एसडीके फ़ोल्डर पूरी तरह से डाउनलोड नहीं किया गया था, मुख्य रूप से इस समस्या का स्रोत। आपको या तो एक और पूरी तरह से डाउनलोड किए गए एंड्रॉइड एसडीके (टूल सेक्शन और एक्सट्रा सहित जो आपको वास्तव में चाहिए) का उपयोग करना होगा या उस ग्रहण एसडीके का उपयोग करना होगा जिसे आप पहले अपने एंड्रॉइड एंड्रॉइड विकास के लिए डाउनलोड कर सकते हैं। फिर बिल्ड-> अपने प्रोजेक्ट को एक बार फिर से साफ करें।

आजमाने योग्य।


0

एपीआई 23 (एंड्रॉइड 6.0) का उपयोग करने के लिए अपग्रेड करें या ग्रैडल में ऐप्पोमैट-वी 7 को 22.2.2 संस्करण में वापस बदलें। मेरे लिए यह काम Google play service जोड़ने पर है


0

विधि 1: यह दिखा रहा है। आप 23 Api स्थापित नहीं किया। इसलिए एपीआई 23 स्थापित करें।

विधि 2:

अपने build.gradle फ़ाइल में appcompat संस्करण को 22.0.1 (या उससे कम) पर बदलें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.