पर ड्रॉबल संसाधन आईडी से ColorStateList नहीं ढूंढ सकता है मुझे यह त्रुटि मेरे क्रैशलिटिक्स में मिली है, और ऐसा लगता है कि यह केवल Android Nougat के पूर्वावलोकन संस्करण वाले उपयोगकर्ताओं के लिए क्रैश हो रहा है।केवल एंड्रॉइड नौगेट
ऐप स्टार्टअप (मुख्य गतिविधि) पर क्रैश हो जाता है।
स्टैकट्रेस
Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.my.domain/com.my.domain.activities.MainActivity}: android.content.res.Resources$NotFoundException: Can't find ColorStateList from drawable resource ID #0x7f020057
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2646)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2707)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6077)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
Caused by android.content.res.Resources$NotFoundException: Can't find ColorStateList from drawable resource ID #0x7f020057
at android.content.res.ResourcesImpl.loadColorStateList(ResourcesImpl.java:840)
at android.content.res.Resources.loadColorStateList(Resources.java:998)
at android.content.res.TypedArray.getColor(TypedArray.java:447)
at android.app.Activity.onApplyThemeResource(Activity.java:4039)
at android.view.ContextThemeWrapper.initializeTheme(ContextThemeWrapper.java:198)
at android.view.ContextThemeWrapper.setTheme(ContextThemeWrapper.java:140)
at android.app.Activity.setTheme(Activity.java:4009)
at android.support.v7.app.AppCompatActivity.setTheme(AppCompatActivity.java:90)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2592)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2707)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6077)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
यह Android नूगा तरह लग रहा है नहीं रह गया है कि मैं अपने अनुप्रयोग में उपयोग कर रहा हूँ प्रणाली रंग के कुछ प्रकार का समर्थन करता है? लेकिन मुझे नहीं पता कि इसे ठीक कैसे किया जाए।
संपादित
तो मैं अपने आर फ़ाइल में आईडी 0x7f020057 के साथ संसाधन मिल गया है और यह यह है:
सार्वजनिक स्थिर अंतिम पूर्णांक background_splash_gradient = 0x7f020057;
मैं कहाँ मैं इसे उपयोग कर रहा हूँ की जाँच की और यहाँ यह है:
<style name="StartingWindowTheme" parent="AppTheme">
<item name="android:windowBackground">@drawable/background_splash_gradient</item>
<item name="android:colorBackground">@drawable/background_splash_gradient</item>
</style>
और यह background_splash_gradiend xml फ़ाइल है:
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:angle="135"
android:endColor="#00d49e"
android:startColor="#00bcd4"/>
</shape>
मैं अभी भी यह क्यों पता नहीं है नौगेट पर मुद्दे पैदा कर रहा है। मैंने "StartWindowTheme" शैली को हटाने का प्रयास किया है और ऐप अब काम करता है, यह अब क्रैश नहीं होता है। लेकिन मुझे उससे बेहतर सुधार की जरूरत है।
संपादित 2
तो मैं इस लाइन को दूर करने की कोशिश की:
<item name="android:colorBackground">@drawable/background_splash_gradient</item>
और यह काम करता है। ऐसा लगता है कि android:colorBackground
समस्या है।
अस्थायी ठीक
के बाद से समस्या रेखा से ऊपर उल्लेख किया है, केवल नूगा पर, मैं एक values-v24
फ़ोल्डर बनाया और वहाँ लाइन निकाल दिया है। ऐप अब नौगेट पर काम करता है, लेकिन मैं एक बेहतर समाधान की सराहना करता हूं।
आप 'android.R.color' से कुछ भी प्रयोग करते हैं? – EpicPandaForce
हम्म, मैं वास्तव में नहीं यकीन है कि, मैं सिर्फ "android.R.color" के लिए एक वैश्विक खोज किया था और यह कुछ भी नहीं मिला। मान लीजिए कि यह मुद्दा है, समाधान क्या होगा? – Guy
असल में, हाँ, यह है कि मैं एक्सएमएल में यह उपयोग कर रहा हूँ लगता है। मैं "@android: रंग/पारदर्शी" – Guy