ऐप बंद होने के बाद एंड्रॉइड स्टूडियो, लॉगकट क्लीन करता है


133

एंड्रॉइड स्टूडियो के लिए 1.2 बीटा अपडेट के बाद से मुझे अपने लॉगकैट के साथ समस्या हो रही है। जब मैं अपना ऐप चलाता हूं तो यह सामान्य रूप से किया गया सब कुछ लॉग करता है, तो मैं उस बिंदु पर पहुंच जाता हूं, जहां ऐप के साथ मेरा ऐप क्रैश होता है: दुर्भाग्य से, गेम बंद हो गया है।

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

जो कुछ उपयोगी हो सकता है वह यह है कि इसके बाद यह प्रक्रिया एंड्रॉइड.प्रोसेस.कोर में बदल जाती है और मेरे लॉगकैट में मुझे जो संदेश मिलता है उसे भर देता है:

04-13 10:28:13.394  12259-12265/android.process.acore D/dalvikvm    
Debugger has detached; object registry had 1 entries

संपादित करें: मैंने ब्रेकपॉइंट के बारे में पढ़ा था, इसलिए सेटिंग्स-बिल्ड, निष्पादन, तैनाती-डिबगर में ब्रेकप्वाइंट पर अक्षम फ़ोकस एप्लिकेशन लेकिन इसका कोई प्रभाव नहीं पड़ा।


2
यदि आपको अदब प्रोग्राम की स्थापित जगह मिलती है जिसे आप adb logcatअपने टर्मिनल या कमांड विंडो से चला सकते हैं, और वैकल्पिक रूप से इसे पेजर, ग्रीप, टी या जो भी हो, में पाइप कर सकते हैं।
क्रिस स्ट्रैटन

1
हाँ, आप भी कोशिश कर सकते हैं adb shell bugreport > log.txt, कमांड समाप्त होने के बाद लॉग जानकारी के प्रकार प्राप्त होंगे।
स्वादिष्ट

@ आपकी मम्मी ने मेरे लिए अब तक का सबसे अच्छा काम किया, फिर भी मुझे उम्मीद है कि यह मेरी राय में सबसे अच्छा तरीका नहीं है। साभार
ब्लैक लोटस

1
एंड्रॉइड स्टूडियो 1.2 के साथ लॉग को साफ नहीं करने के लिए मुझे कोई समाधान नहीं मिला, लेकिन एक आसान समाधान ऐप क्रैश होने पर बंद बटन (डिवाइस पर) पर क्लिक नहीं करना है। इस प्रकार, आपके पास सभी लॉग हैं, और इसके कारण ऐप्स क्रैश हो गए हैं।
चाकिर

@Jameltheone संदेश केवल कुछ सेकंड के लिए स्क्रीन पर रहता है। तब यह दुर्घटना संवाद को बंद कर देता है। तो वास्तव में उस पर नियंत्रण नहीं है।
काले कमल

जवाबों:


270

मेरे पास एक ही मुद्दा था, लेकिन बग की तुलना में एक विशेषता की तरह दिखता है:

AndroidStudio में, Logcat विंडो के लिए डिफ़ॉल्ट सेटिंग "केवल चयनित एप्लिकेशन दिखाएं" (Logcat विंडो के ऊपरी दाएं कोने) लगता है ... जो चयनित प्रक्रिया के लॉग को देख रहा है (डिफ़ॉल्ट रूप से आपका वर्तमान लॉन्च)। इसलिए जब परीक्षण के दौरान आपका ऐप क्रैश हो जाता है, तो वह प्रक्रिया समाप्त हो जाती है, इसलिए फ़िल्टर लॉग को हटा देता है।

इसके बजाय, "फ़िल्टर कॉन्फ़िगरेशन संपादित करें ..." चुनें और अपने ऐप के लिए एक फ़िल्टर सेट करें , जैसे:

  • फ़िल्टरनाम: MyApp
  • PackageName: com.example.myapp (<< अपने ऐप के पैकेज नाम से बदलें)

... और फिर भविष्य के रन के लिए उस फ़िल्टर का चयन करें। यह ऐप क्रैश होने के बाद भी आपके लिए वहां लॉग रखना चाहिए।


बहुत बहुत धन्यवाद। मैं 2 दिन पहले त्रुटि का पता लगा रहा हूँ! अब मुझे पता है कि वास्तव में त्रुटि को कैसे देखा जाए। :)
वोपी

आप कह रहे हैं कि SAVIOR क्लीयर होने से पहले लॉग को कॉपी करने की कोशिश कर रहा था ... उसने सोचा कि यह मेरे फोन का काम है क्योंकि अन्य फोन सामान्य व्यवहार करते हैं।
मास्टर फ़ेथी

बस जो मुझे याद आ रहा था। यह स्वीकृत उत्तर होना चाहिए।
तेल

एक ही समस्या थी। अच्छी तरह से काम।
चंदन पेडनेकर

59

"केवल चयनित एप्लिकेशन" को "नो फिल्टर" पर स्विच करें। इस तरह, आप लॉगकैट आउटपुट को किसी प्रक्रिया से तब भी देख सकते हैं जब वह प्रक्रिया नहीं चल रही हो।

नकारात्मक पक्ष यह है कि आपका लॉगकाट अन्य प्रक्रियाओं से अधिक स्पैम से भरा होगा।


1
स्पैम को फ़िल्टर करने के लिए, खोज बार में अपना स्वयं का ऐप का पैकेज नाम टाइप करें, इसके अलावा "केवल चयनित एप्लिकेशन / नो फिल्टर" ड्रॉपडाउन दिखाएं।
कंप्यूटिंगफ्रीक

24

मेरा ऐप क्रैश और रीस्टार्ट हो रहा था। मुझे यह जानने के लिए कि क्या हो रहा था, लॉगकोट को पढ़ने में कुछ समस्याएँ थीं। फिर मैंने देखा कि ड्रॉप डाउन मेनू में, डिवाइस ड्रॉपडाउन के बगल में "com.mypackage.myapp ('कुछ संख्या')" जैसा कुछ था और जब मेरा ऐप क्रैश हो गया तो एक और विकल्प था जिसने कहा "com.mypackage.myapp" 'कुछ संख्या') [DEAD] " । यदि आप "डेड" विकल्प चुनते हैं, तो यह आपको पिछले उदाहरण का लॉगकाट दिखाएगा।

डेड लॉकेट


यह क्रैश होने पर दिखाई देता है।
एलोरेंको

मेरा मतलब दुर्घटना पर था। पीआईडी ​​बदल जाता है लेकिन मृत उदाहरण सूची में दिखाई नहीं देता है।
करण मोदी

20

क्रैश की स्थिति Runमें आईडीई के निचले भाग में टैब देखें ।

आप इस हिस्से में दुर्घटना का कारण देख सकते हैं (यहां तक ​​कि लॉगकैट क्लीन केस में भी)।

नोट: यदि उपरोक्त चाल काम नहीं करती है तो क्रैश का उत्पादन करने की कोशिश करें और तुरंत मोबाइल केबल को डिस्कनेक्ट करें (यदि आप परीक्षण के लिए वास्तविक डिवाइस का उपयोग करते हैं)। आप इसे साफ़ करने से पहले त्रुटि देख सकते हैं।

अद्यतन: यदि ऊपर की चाल भी काम नहीं करती है, तो फोन को संलग्न करने और अलग करने की कोशिश करें और उम्मीद है कि समस्या हल हो गई है।

Update2: यदि फिर से काम नहीं करता है, तो कैच अमान्य करने का प्रयास करें और फिर से शुरू करें और फिर से डिबगिंग शुरू करें।

Update3: आखिरी रास्ते के रूप में, ऐप को हटाने और फिर से इंस्टॉल करने का प्रयास करें, फिर डिबगिंग शुरू करें (यदि आप उस स्थिति को नहीं खोते हैं जिसे आप परीक्षण करना चाहते हैं)


6

Android स्टूडियो में 2+

  1. क्लिक करें Run

  2. क्लिक करें Edit Configurations

  3. में Run/Debug Configurationsखिड़की का चयन करें Miscellaneousटैब

  4. सुनिश्चित करें कि Clear log before launchचेकबॉक्स चेक नहीं किया गया है


4

मैंने एक ही मुद्दे का सामना किया है और यह समाधान है: -

1- उपकरण -> Android -> ADB एकीकरण सक्षम करें।

और अब आप लॉगकैट और क्रैश को सामान्य रूप में देख सकते हैं


मेरा एडीबी इंटरग्रेशन पहले से ही काफी दुखी था। कुछ ऐसा है जो माबाय उपयोगी है, यह स्पष्ट होने के बाद मुझे संदेश मिलता है: 04-13 10: 28: 13.394 12259-12265 / android.process.acore D / dalvikvm ug डीबगर ने अलग कर लिया है; ऑब्जेक्ट रजिस्ट्री में 1 प्रविष्टियां थीं
ब्लैक लोटस

@BlackLotus क्या आपने अपनी समस्या हल कर ली है? मैं यहां
हू

यह अब नए एंड्रॉइड स्टूडियो में मान्य नहीं है।
हम्जेह सोबोह

4

एप्लिकेशन क्रैश होने के बाद फ़िल्टर लॉग को साफ़ करता है। इसलिए "एडिट फ़िल्टर कॉन्फ़िगरेशन" चुनें और फ़िल्टर नाम के साथ अपना स्वयं का कस्टम फ़िल्टर बनाएं। यह ऐप के ठीक होने पर भी लॉग से लॉग सेव करेगा।


1

यह 2018 है और यह अभी भी हो सकता है। एंड्रॉइड स्टूडियो बंद करें और फिर से खोलें।


0

यह बग एंड्रॉइड स्टूडियो संस्करण 1.2.2 की नई रिलीज के साथ तय किया गया लगता है


1
बग अभी भी यहां है, यहां तक ​​कि एंड्रॉइड स्टूडियो 2.2.2 में भी, इसलिए मुझे लगता है कि @maxdownunder इस धारणा के साथ काफी सही था कि यह वास्तव में एक ... "सुविधा" है
Aenadon

0

मैं एक ही समस्या में भाग गया और कोई भी उत्तर मेरी मदद नहीं कर सका, जब तक मुझे एहसास नहीं हुआ कि मेरा ऐप एक OutOfMemoryException पैदा कर रहा है। यह एक संभावित मूल कारण भी है।

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