RuntimeException: अनुप्रयोग को तत्काल करने में असमर्थ


97

जब मैं अपना एप्लिकेशन चलाता हूं, तो हर बार मुझे अपने लॉगकैट में नीचे अपवाद मिल रहा है:

 04-14 09:29:53.965: W/dalvikvm(1020): threadid=1: thread exiting with uncaught exception (group=0x409c01f8)
    04-14 09:29:53.985: E/AndroidRuntime(1020): FATAL EXCEPTION: main
    04-14 09:29:53.985: E/AndroidRuntime(1020): java.lang.RuntimeException: Unable to instantiate application   android.app.Application: java.lang.NullPointerException
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.app.LoadedApk.makeApplication(LoadedApk.java:482)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.app.ActivityThread.handleBindApplication(ActivityThread.java:3938)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.app.ActivityThread.access$1300(ActivityThread.java:123)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1185)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.os.Handler.dispatchMessage(Handler.java:99)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.os.Looper.loop(Looper.java:137)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.app.ActivityThread.main(ActivityThread.java:4424)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at java.lang.reflect.Method.invokeNative(Native Method)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at java.lang.reflect.Method.invoke(Method.java:511)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at dalvik.system.NativeStart.main(Native Method)
    04-14 09:29:53.985: E/AndroidRuntime(1020): Caused by: java.lang.NullPointerException
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.app.LoadedApk.initializeJavaContextClassLoader(LoadedApk.java:362)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.app.LoadedApk.getClassLoader(LoadedApk.java:305)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     at android.app.LoadedApk.makeApplication(LoadedApk.java:474)
    04-14 09:29:53.985: E/AndroidRuntime(1020):     ... 11 more

नोट: जब मैं ऐप को एमुलेटर से अनइंस्टॉल करता हूं और इसे चलाता हूं, तो मुझे यह अपवाद नहीं मिलता है, लेकिन जब मैं एमुलेटर में स्थापित एप्लिकेशन को फिर से चलाता हूं, तो मुझे यह मिल रहा है। कृपया मदद कीजिए।


1
अगर आपका पैकेज android.app.Application है, तो पैकेज का नाम बदलने की कोशिश करें, थोथा संदिग्ध लगता है, सिस्टम के पैकेज जैसा दिखता है।
इसकी खाली नहीं

यह भी सुनिश्चित करें कि आप ऐप को मेनिफेस्ट में घोषित किया गया है।
dcow

द्वारा विस्तारित कारण: java.lang.NullPointerException लाइन। आपके आवेदन में एक पंक्ति के आगे एक पंक्ति का संदर्भ होना चाहिए
ज़ैद दग़ेस्तानी

नहीं, मेरे पास आपके आवेदन में उल्लिखित जैसा कोई पैकेज नहीं है। ऐप को मेनिफेस्ट में घोषित किया गया है: <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.infy.meetingmanager.activity" android:versionCode="1" android:versionName="1.0" > <application...> <activity android:name=".LoginActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" />
user182944

आपका Android संस्करण 4.0 पर कौन सा ऐप चल रहा है?
योर्क

जवाबों:


194

यह एक वर्बोज़ एरर मैसेज है जिसे अंतर्निहित ढाँचे द्वारा तब उठाया जाता है जब dalvik फिर से .apk फ़ाइल को स्थापित करता है और उसी पैकेज से पिछली खोली गई गतिविधि / दृश्य को पुन: उपयोग या रीसायकल करने की कोशिश करता है (यदि आपने पिछले स्थापित ऐप को अभी तक बंद नहीं किया है)। इसके अलावा, आपके ऐप के साथ इसका कोई लेना-देना नहीं है, यह बहुत कम संभावना है कि अंत उपयोगकर्ता के डिवाइस पर इस क्रिया त्रुटि संदेश से आपका ऐप फ्रीज़ या क्रैश हो जाएगा।

ऐसा लगता है कि यह dalvik verbose त्रुटि लॉग केवल एंड्रॉइड 4.0 सिस्टम पर खुश है, मैंने इसे एंड्रॉइड 3.2 और 2.3.3 रनिंग वातावरण पर स्वयं परीक्षण किया है, जहां आप इस संदेश को न तो उन पर दिखाए जाने के लिए दोहरा सकते हैं। इसी तरह के सवाल पर यहां पहले भी चर्चा की जा चुकी है और किसी ने Android इश्यू ट्रैकर में बग रिपोर्ट भर दी है

मुझे नहीं लगता कि आपको इस क्रिया त्रुटि लॉग के बारे में बहुत अधिक चिंता करनी चाहिए, यदि आप लॉगकैट में इस लाल त्रुटि के पहले और बाद में अधिक लॉग देखते हैं, तो आप पूरी कहानी देख सकते हैं और पा सकते हैं कि पिछली खुली गतिविधि / दृश्य (जो मृत अवस्था के रूप में चिह्नित होते हैं) मारे जाते हैं और नव-स्थापित एक अंततः पोप हो जाता है।


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

3
मुझे यह एक प्रोडक्शन एप्लिकेशन के डेवलपर कंसोल में मिल रहा है। यह मुख्य रूप से 4.2 के साथ होता है, लेकिन मैंने अन्य संस्करण (4.1, 4.4) के रूप में देखा है।
डस्टिन

3
@ डस्टिन, क्या आपने इसे हल किया है? जैसा कि इस अपवाद को अधिकतम 34 / सप्ताह में रिपोर्ट करता है! और उपयोगकर्ता संदेशों में बहुत सारी शिकायतें!
thecr0w

1
मैं इसे अभी भी एंड्रॉइड 5.1.1 में स्थानीय रूप से प्राप्त कर रहा हूं।
सैम

1
यह 5.1.1 पर भी होता है। क्या हो रहा है?
एंड्रॉयड डेवलपर

16

मुझे एहसास है कि यह एक बहुत पुराना सवाल है, लेकिन यह वैसे भी उपयोगी हो सकता है। मैंने पाया है कि जब मैं अपने स्वयं के विकास में इस त्रुटि का पालन करता हूं, तो यह मेरे ऐप के पहले से चल रहे उदाहरण के कारण बड़े करीने से बंद नहीं होता है, उदाहरण के लिए बाहर निकलने से पहले पृष्ठभूमि के धागे को बंद करके।


हां, होम बटन को अपने फोन पर मारना फिर इसे चलाना मेरे लिए इस त्रुटि को भी दूर करता है।
अग्रदूत

समझ में आता है, लेकिन उपयोगकर्ता के सामने खुलने पर कोई ऐप बड़े करीने से बंद कैसे हो सकता है और फिर एंड्रॉइड इसे अपग्रेड करने के लिए मारता है?
सैम

शायद Android उस परिदृश्य में onDestroy () तरीकों को आमंत्रित करता है, नहीं? एक उम्मीद तो होगी।
जूलियनसम जूल

2

जब मैं अपने एप्लिकेशन वर्ग के अंदर JSOUP के साथ इंटरनेट से जुड़ने की कोशिश करता हूं तो मुझे वही त्रुटि मिल रही है। यह मुश्किल था, क्योंकि एप्लिकेशन एमुलेटर पर चलता है, लेकिन वास्तविक डिवाइस पर नहीं। यह पता चला है, कि मैंने सिर्फ JSOUP लाइब्रेरी का गलत इस्तेमाल किया है। नए थ्रेड में पेज लोड हो रहा है मेरी समस्या हल कर दी।

आशा है कि मैंने किसी की मदद की।


2

आशा है कि यह किसी की मदद करता है। इसे क्लिक करके अपने एमुलेटर पर चल रहे ऐप्स पर जाएं:

यहां छवि विवरण दर्ज करें

यहां छवि विवरण दर्ज करें

उस ऐप को बंद करें जिसे आप इंस्टॉल करने की कोशिश कर रहे हैं और फिर उसे फिर से चलाएं। ऐप या क्लीन प्रोजेक्ट को अनइंस्टॉल / रीइंस्टॉल करने की जरूरत नहीं।


1

मेरे लिए इस परियोजना को साफ करने में मदद मिली। ग्रहण में:
- प्रोजेक्ट -> क्लीन
प्लीज कंट्रोल दैट प्रोजेक्ट -> बिल्ड ऑटोमैटिकली CHECKED है
अगर इसके बाद जीन-फोल्डर खाली है, तो रिस-फोल्डर में गलती है। अक्सर, Res- फ़ोल्डर में गलतियों को रेड क्रॉस द्वारा नहीं दिखाया जाता है! शुभकामनाएँ और शुभकामनाएँ


मेरे लिए मदद नहीं की। जब मैं adbअपने एक प्रोडक्शन एप से दूसरे में अपग्रेड करने के लिए उपयोग करता हूं, तो यह समस्या होती है, इसलिए यह मेरे मामले में आईडीई के लिए विशिष्ट नहीं लगता है।
सैम

0

मेरे मामले में यह त्रुटि तब सामने आई है जब मैंने एंड्रॉइड मावेन प्रोजेक्ट को नए कार्यक्षेत्र में आयात किया है, और एसआरसी फ़ोल्डर स्वचालित रूप से पथ बनाने के लिए नहीं जोड़ा गया था।

प्रोजेक्ट / बिल्ड पथ पर राइट क्लिक करें / बिल्ड पाथ / सोर्स को कॉन्फ़िगर करें - यदि अनुपस्थित स्रोत हैं तो जांचें।


0

मुझे भी यही समस्या हुई। प्रोजेक्ट की सफाई ने मेरे लिए काम किया।

प्रोजेक्ट चुनें प्रोजेक्ट पर जाएं -> क्लीन


मेरे लिए मदद नहीं की। जब मैं adbअपने एक प्रोडक्शन एप से दूसरे में अपग्रेड करने के लिए उपयोग करता हूं, तो यह समस्या होती है, इसलिए यह मेरे मामले में आईडीई के लिए विशिष्ट नहीं लगता है।
सैम

0

मेरे मामले में logcat ने मुझे यह दिखाया कि इसे प्रारंभिक गतिविधि नहीं मिली, लेकिन डेक्स पाथ अलग था, यह "... / डेटा / ऐप / myapp-1" के बजाय "... / डेटा / ऐप / myapp" था । मैं पैकेज खोजकर्ता विंडो में एलिप्स प्रोजेक्ट नाम "myapp" पर क्लिक कर रहा हूं। फिर उस पर राइट क्लिक करें, -> Refactor-> rename ... मैं प्रोजेक्ट का नाम myapp-1 पर सेट करता हूं, और फिर, -> refactor-> rename ... और फिर से "myapp" पर वापस जाता हूं। फिर यह काम किया ... ग्रहण में बग के कुछ कुनफ?


0

मुझे भी यही समस्या हुई। मेरे ऐप को अनइंस्टॉल करने के बाद फिर से इसे इंस्टॉल करने से समस्या हल हो गई।


0

मुझे यह अनुभव हुआ जब मैंने अपनी परियोजना को आयात किया जो एक अलग मशीन से बनाया गया था। बस कैश अमान्य करें और पुनः आरंभ करें

फ़ाइल> अमान्य कैश / पुनः आरंभ करें> अमान्य और पुनरारंभ करें


0

मैंने ApplicationId को कुछ अलग (मॉड्यूल: ऐप) बिल्ड.ग्रेड फ़ाइल में बदल दिया, ऐप को फिर से अपने डिवाइस पर चलाएं। फिर, मैं परिवर्तन को पूर्ववत् करता हूं और फिर से एप्लिकेशन चलाता हूं और सब कुछ काम करता है। यह एंड्रॉइड स्टूडियो 2.3.1 और 4 अलग-अलग डिवाइसों पर काम करता है जो मेरे पास हैं, 5.0 से 7.0 तक।


0

मैं इस सवाल से मिलता हूं। जब उपयोग gradle clean, gradle installDebugयह ठीक काम!

   AndroidRuntime  D  Shutting down VM
E  FATAL EXCEPTION: main
E  Process: tv.panda.live.broadcast, PID: 4685
E  java.lang.RuntimeException: Unable to instantiate application tv.panda.live.broadcast.PandaApplication: java.lang.ClassNotFoundException: Didn't find class "tv.panda.live.broadcast.PandaApplication" o
   n path: DexPathList[[zip file "/data/app/tv.panda.live.broadcast-1/base.apk"],nativeLibraryDirectories=[/data/app/tv.panda.live.broadcast-1/lib/arm, /vendor/lib, /system/lib]]
E      at android.app.LoadedApk.makeApplication(LoadedApk.java:572)
E      at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4883)
E      at android.app.ActivityThread.access$1500(ActivityThread.java:178)
E      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1573)
E      at android.os.Handler.dispatchMessage(Handler.java:111)
E      at android.os.Looper.loop(Looper.java:194)
E      at android.app.ActivityThread.main(ActivityThread.java:5691)
E      at java.lang.reflect.Method.invoke(Native Method)
E      at java.lang.reflect.Method.invoke(Method.java:372)
E      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:959)
E      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:754)
E  Caused by: java.lang.ClassNotFoundException: Didn't find class "tv.panda.live.broadcast.PandaApplication" on path: DexPathList[[zip file "/data/app/tv.panda.live.broadcast-1/base.apk"],nativeLibraryDi
   rectories=[/data/app/tv.panda.live.broadcast-1/lib/arm, /vendor/lib, /system/lib]]
E      at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
E      at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
E      at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
E      at android.app.Instrumentation.newApplication(Instrumentation.java:988)
E      at android.app.LoadedApk.makeApplication(LoadedApk.java:567)
E      ... 10 more
E      Suppressed: java.lang.ClassNotFoundException: tv.panda.live.broadcast.PandaApplication
E          at java.lang.Class.classForName(Native Method)
E          at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
E          at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
E          at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
E          ... 13 more
E      Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available

0

सरल उपाय:

बस अपने एमुलेटर या मोबाइल डिवाइस को पुनरारंभ करें। और समस्या दूर हो गई है! इस समस्या का कारण पिछली ऐप गतिविधि के कारण गलत तरीके से रोका गया था।

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