एंड्रॉइड 7 नेटिव क्रैश: libc.so tgkill


98

मैं निम्नलिखित स्टैक ट्रेस के साथ इस मूल क्रैश को देख रहा हूं।

यह एंड्रॉइड 7.0 और 7.1 में ही होता है। ऐप में कुछ भी नया नहीं जोड़ा गया है, जो कुछ वर्षों से उत्पादन में है, लेकिन नौगाट में अपडेट होने वाले अधिक उपकरणों के साथ यह दुर्घटना अक्सर होती है और उपद्रव बन रही है।

किसी भी सलाह की सराहना की जाएगी।

native: pc 000000000007a6c4  /system/lib64/libc.so (tgkill+8)
  native: pc 0000000000077920  /system/lib64/libc.so (pthread_kill+64)
  native: pc 000000000002538c  /system/lib64/libc.so (raise+24)
  native: pc 000000000001d24c  /system/lib64/libc.so (abort+52)
  native: pc 000000000001225c  /system/lib64/libcutils.so (__android_log_assert+224)
  native: pc 00000000000610e0  /system/lib64/libhwui.so
  native: pc 000000000003908c  /system/lib64/libhwui.so
  native: pc 000000000003609c  /system/lib64/libhwui.so
  native: pc 000000000003b4fc  /system/lib64/libhwui.so
  native: pc 000000000003c520  /system/lib64/libhwui.so
  native: pc 000000000003e694  /system/lib64/libhwui.so (_ZN7android10uirenderer12renderthread12RenderThread10threadLoopEv+152)
  native: pc 00000000000127f0  /system/lib64/libutils.so (_ZN7android6Thread11_threadLoopEPv+336)
  native: pc 00000000000a50b0  /system/lib64/libandroid_runtime.so (_ZN7android14AndroidRuntime15javaThreadShellEPv+116)
  native: pc 00000000000770f4  /system/lib64/libc.so (_ZL15__pthread_startPv+204)
  native: pc 000000000001e7d0  /system/lib64/libc.so (__start_thread+16)

यहां उन उपकरणों की सूची दी गई है जो प्रभावित हैं: यहां छवि विवरण दर्ज करें

अद्यतन 7/18:

अभी भी इस की जड़ तक पहुंचने में असमर्थ हैं, इसलिए मैंने एक ऐसी डिवाइस खरीदने का फैसला किया जिसकी सबसे अधिक घटनाएं थीं और इसकी उचित कीमत थी, जो एंड्रॉइड 7.0 के साथ सैमसंग गैलेक्सी जे 3 2017 संस्करण निकला। दुर्भाग्य से मैं अभी भी दुर्घटना को पुन: उत्पन्न करने में असमर्थ हूं।

मैंने उत्पादन में ऐप में कुछ मेमोरी उपयोग सुधार भी किए हैं, लेकिन दुर्घटना अभी भी हो रही है।

सभी टिप्पणियों और मेरे अपने शोध से यह गतिशील रूप से जुड़े एनडीके से संबंधित प्रतीत होता है, लेकिन मैं किसी भी तरह का उपयोग नहीं कर रहा हूं और यह पता लगाने के लिए कि इसकी कोई निर्भरता है।

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

// App Compat
    compile 'com.android.support:support-v4:23.0.1'
    compile 'com.android.support:appcompat-v7:23.0.1'
    compile 'com.android.support:cardview-v7:23.0.1'
    compile 'com.android.support:recyclerview-v7:23.0.1'

    // Play Services
    compile 'com.google.android.gms:play-services-location:8.3.0'
    compile 'com.google.android.gms:play-services-maps:8.3.0'
    compile 'com.google.android.gms:play-services-analytics:8.3.0'
    compile 'com.google.android.gms:play-services-appindexing:8.3.0'
    compile 'com.google.android.gms:play-services-ads:8.3.0'

    // Misc Libraries
    compile 'fr.avianey.com.viewpagerindicator:library:2.4.1@aar'
    compile files('app/libs/htmlcleaner-2.7.jar')
    compile files('app/libs/protobuf-java-2.6.0.jar')
    compile files('app/libs/nineoldandroids-2.4.0.jar')

    // Fabric
    compile('com.twitter.sdk.android:twitter:1.13.0@aar') { transitive = true; }
    compile('com.crashlytics.sdk.android:crashlytics:2.5.5@aar') { transitive = true; }

समान दुर्घटना का सामना कर रहे लोगों के लिए, कृपया टिप्पणियों में प्रतिक्रिया दें यदि आप इनमें से किसी भी निर्भरता / संस्करण का उपयोग कर रहे हैं। हो सकता है कि हम समस्या की निर्भरता को दूर कर सकें।


6
शायद मुझे लगता है कि आपका मूल क्रैश समान समस्या है। जारी करने वाला। URL/ues/37123764 मेरे आवेदन में समान बग है, लेकिन मुझे कोई समाधान नहीं मिला ... मुझे लगता है कि एंड्रॉइड 7, 7.1 बग।
कोजी मत्सुबारा

3
मैं यह भी देख रहा हूं, ठीक उसी स्टैक ट्रेस और प्रभावित उपकरणों की सटीक समान सूची! नवीनतम संस्करण 15 मई को प्रकाशित किया गया था, लेकिन मेरे पास क्रैश पेज में एक ही "tgkill" नाम के साथ दो लाइनें हैं।
ऑर्गमीर

3
मैं भी इसी सटीक मुद्दे का अनुभव कर रहा हूं, सटीक समान स्टैक ट्रेस, सटीक समान डिवाइस प्रभावित, शून्य देशी पुस्तकालयों का उपयोग कर, और स्थान और मानचित्र सेवाओं का उपयोग कर रहा हूं। शायद यह उसी से बंधा है? किसी को भी एक तय है?
कॉर्ड रेहान

3
पिछले 2 महीनों में, हमारे पास 14k + उपयोगकर्ताओं को प्रभावित करने वाले इनमें से 30k से अधिक tgkill क्रैश हैं। मैंने पिछले कुछ हफ़्ते बिताए हैं धीरे-धीरे किसी भी 3 पार्टी पुस्तकालयों को हटाने में जो हम उपयोग कर रहे हैं और मंचन रोलआउट जारी कर रहे हैं यह देखने के लिए कि क्या मैं इन दुर्घटनाओं का कारण बन सकता हूं। रेट्रोफिट, ओकहटप, जैक्सन, पिकासो, फायरबेस, गूगल प्ले सर्विसेज, मल्टीडेक्स और अपाचे लिगेसी को छोड़कर सबकुछ हटा दिया गया है। इस धागे के आधार पर, हम अपने मानचित्रों को हटाने के साथ, अपने उपयोगकर्ताओं के 1% को जारी करने पर चर्चा कर रहे हैं। वर्तमान में चल रहा है: 'com.google.android.gms: play-services-Maps: 11.0.1'
FinHead

3
हमने केवल 'com.google.android.gms: play-services-Maps: 11.0.1' को हटाने के साथ एक मंचन रोलआउट जारी किया। यह सब सप्ताहांत देखने के बाद, tgkill दुर्घटना के कोई उदाहरण नहीं थे। हां, यह समस्या @Deo द्वारा बताए गए नक्शे के कारण है और नीचे दिए गए समस्या ट्रैकर से जुड़ी है।
फिनहेड

जवाबों:


33

आपके द्वारा प्रदान किए गए डंप को देखकर कुछ सुराग मिलते हैं:

_ZN7android10uirenderer12renderthread12RenderThread10threadLoopEv

यह इंगित करता है कि UI थ्रेड में त्रुटि हुई।

libhwui.so x 6

यह इंगित करता है कि यह कुछ ग्राफिक्स / ui संबंधित कोड के बीच में हो रहा है।

libcutils.so - __android_log_assert

यह एक मुखर हैंडलर है, इसलिए सबसे अधिक संभावना है कि किसी प्रकार के दावे का उल्लंघन किया गया था libwhui

बीच में बंद करें:

यह ओ / एस को "असामान्य रूप से" बंद करने के लिए कह रहा एप्लिकेशन है।

raise + pthread_kill + tgkill: यह O / S (Android) ऐप को बंद कर रहा है।

आप दुर्घटनाओं की इन प्रकार के डीबगिंग के लिए कुछ प्रलेखन देख सकते हैं यहां

वैसे भी, मुझे डर है कि आपके द्वारा प्रस्तुत किए गए आंकड़ों की इस मोटे और स्पष्ट व्याख्या से परे अटकलें करना वास्तव में मुश्किल है।

हो सकता है अगर आपने बग को पकड़ा हो जबकि यह एंड्रॉइड लॉग व्यूअर से जुड़ा हुआ था, तो आपके पास अधिक एप्लिकेशन विशिष्ट डेटा (या यहां तक ​​कि एक त्रुटि संदेश भी होता है जिसे एस्टर फ़ंक्शन आमतौर पर बाहर रखता है)।

मेरा टिप त्रुटि से संबंधित सभी विवरणों को ट्रैक करने के लिए या प्रभावित डिवाइस को पकड़कर रखने और डीबगर से जुड़े रहने के दौरान इसे पुन: उत्पन्न करने के लिए ACRA जैसी किसी चीज़ का उपयोग करना है ।

सौभाग्य!

EDIT 2017-06-16 : मैं अभी कुछ अतिरिक्त जानकारी शिष्टाचार टिप्पणी जोड़ना चाहता हूं Fco P. जाहिर तौर पर Google ने देशी पुस्तकालयों को Android के नवीनतम संस्करणों (7.x) में चलाने की अनुमति देने के लिए कुछ बदलाव करने का निर्णय लिया है। अधिक विवरण इस लिंक में हैं


raise + pthread_kill + tgkill: यह O / S (Android) ऐप को बंद कर रहा है। क्या यह तब होता है जब उपयोगकर्ता ऐप को मारता है या स्वचालित रूप से ओएस से?
DevC

1
यह ओ / एस है जहाँ तक मुझे पता है कि यह एक खराब प्रक्रिया को बंद कर रहा है। यदि ऐप ने "शांतिपूर्वक" समाप्त कर दिया, तो यह एक "मार" ऑपरेशन नहीं होगा।
लेनार्ट रोलैंड

8

यह यहां बताया गया है: https://issuetracker.google.com/issues/37123764

पुन: उत्पन्न करने के लिए: एक प्रभावित मोड प्राप्त करें, डेवलपर मोड को सक्षम करें, और पृष्ठभूमि गतिविधियों को 0. पर सेट करें। "बैकग्राउंड क्रैश दिखाएं" को भी सक्षम करें।

फिर ऐप खोलें, और इसे फिर से बंद करें: आप क्रैश देखेंगे।


3

टिप्पणियों में नहीं (अपर्याप्त प्रतिनिधि)।

आपके द्वारा सूचीबद्ध निर्भरता का हम उपयोग करते हैं:

compile 'com.android.support:cardview-v7:25.3.1'
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support:support-v4:25.3.1'

compile 'com.google.android.gms:play-services-maps:10.2.1'
compile 'com.google.android.gms:play-services-location:10.2.1'

अपने से अलग संस्करण। मुझे यह संदेह है कि खेल-सेवाओं-मानचित्रों में बग होते हैं।

शायद आप दृश्य मानचित्र में मानचित्र विखंडन का उपयोग करते हैं जैसा कि हम करते हैं और कोजी मत्सुबारा ( https://issuetracker.google.com/issues/37123764 ) द्वारा पहले ही बताए गए कई लोगों के मुद्दे


क्या आप उस बग रिपोर्ट के आधार पर इसे रोकने के लिए किसी काम के बारे में जानते हैं? मैं कोई समाधान या समाधान या कुछ भी नहीं देख रहा हूं।
hugughan3

मेरे पास एक ही मुद्दा है जो मेरे सभी एप्लिकेशन को प्रभावित करता है, हालांकि मैं केवल समर्थन पुस्तकालयों का उपयोग करता हूं: एनोटेशन, वी 4, एपकॉम और डिजाइन।
सी 71

3

मुझे नहीं पता, शायद हमारी तरह यह समस्या, शायद अलग है, क्योंकि मैं निर्भरता में देखता हूं carview। यहाँ साझा करें भविष्य में किसी के लिए उपयोगी उम्मीद है

मुझे एंड्रॉइड 7.0 और 7.1 बलो पर भी समस्या का सामना करना पड़ा

03-04 23:44:51.489 2173-2173/? A/DEBUG: Abort message: 'Error: Ambient Vertex Buffer overflow!!! used 420, total 284'
03-04 23:44:51.489 2173-2173/? A/DEBUG:     eax 00000000  ebx 0000083b  ecx 00000857  edx 00000006
03-04 23:44:51.489 2173-2173/? A/DEBUG:     esi d19ff978  edi d19ff920
03-04 23:44:51.489 2173-2173/? A/DEBUG:     xcs 00000023  xds 0000002b  xes 0000002b  xfs 0000006b  xss 0000002b
03-04 23:44:51.489 2173-2173/? A/DEBUG:     eip f00a6bb9  ebp d19fee68  esp d19fee0c  flags 00000292
03-04 23:44:51.555 2173-2173/? A/DEBUG: backtrace:
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #00 pc 00000bb9  [vdso:f00a6000] (__kernel_vsyscall+9)
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #01 pc 0007a2ec  /system/lib/libc.so (tgkill+28)
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #02 pc 00075b35  /system/lib/libc.so (pthread_kill+85)
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #03 pc 0002784a  /system/lib/libc.so (raise+42)
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #04 pc 0001ee26  /system/lib/libc.so (abort+86)
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #05 pc 0000fa65  /system/lib/libcutils.so (__android_log_assert+245)
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #06 pc 00084356  /system/lib/libhwui.so
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #07 pc 0003a5ba  /system/lib/libhwui.so
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #08 pc 00083d04  /system/lib/libhwui.so
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #09 pc 0008c5df  /system/lib/libhwui.so
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #10 pc 0008e6d8  /system/lib/libhwui.so
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #11 pc 0008e5d2  /system/lib/libhwui.so
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #12 pc 000350fe  /system/lib/libhwui.so
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #13 pc 0001201f  /system/lib/libutils.so (_ZN7android6Thread11_threadLoopEPv+207)
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #14 pc 0006e53b  /system/lib/libandroid_runtime.so (_ZN7android14AndroidRuntime15javaThreadShellEPv+111)
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #15 pc 00011873  /system/lib/libutils.so (_ZN13thread_data_t10trampolineEPKS_+259)
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #16 pc 00075292  /system/lib/libc.so (_ZL15__pthread_startPv+210)
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #17 pc 0002028e  /system/lib/libc.so (__start_thread+30)
03-04 23:44:51.555 2173-2173/? A/DEBUG:     #18 pc 0001e066  /system/lib/libc.so (__bionic_clone+70)

अनुसंधान और gooogle पर खोज के बाद, मैं प्रतिस्थापित cardviewद्वारा Framelayoutतो यह समस्या हल हो गया था


हाय @ songoku1610, आपको कैसे पता चला कि यह समस्या कार्डव्यू के कारण है।
राणा94

1
मैं प्रतिस्थापित करने की कोशिश की cardviewद्वारा Framelayoutतो इस मुद्दों हल किया गया था, इस मुद्दों केवल Android पर 7.x हो
songoku1610

अन्य बातें, ऊपर दिए गए प्रश्न को संपादित किया गया है, ग्रेड पर पाठ स्वतंत्रताओं को हटा दें, इसलिए मेरा उत्तर because I see in dependencies have including carviewप्रश्न के साथ मेल नहीं खाता है
songoku1610

3

मेरे पास आपके जैसे डिवाइस के लिए Google Play कंसोल में एक ही मुद्दा था।

मेरे मामले में मुद्दा TextureView में लॉक और अनलॉक कैनवास के साथ अलग थ्रेड में एनीमेशन के साथ था।

मैंने TextureView एनीमेशन को 7 और 7.1 android के लिए अमान्य-ऑनड्राइव एनीमेशन में बदल दिया और इससे मदद मिली।


मेरा एप्लिकेशन TextureView का उपयोग करता है। क्या आप कृपया अमान्य-ऑनड्राइव एनीमेशन पर अधिक विस्तृत कर सकते हैं ।
शिशिर शेट्टी

@ शिशिरशेट्टी मैं अब TextureView का उपयोग नहीं करता हूँ, मैं ओवरराइड करता हूँ, onDraw मेथड के सभी एनिमेशन का वर्णन करता हूँ और पोस्टइंवेलेडेटऑनऑमिनेशन () विधि को हर 16 मिलीसेकंड (~ 60fps)
सर्गेई बेलोएजरोव

-1

मैं इस समस्या को एक उपयोगकर्ता के डिवाइस पर क्रैश रिपोर्ट से देख रहा हूं - 'हुआवेई ऑनर 7 एक्स (एचडब्ल्यूबीएनडी-एच)' - एंड्रॉइड 8.0 चला रहा है। चूंकि यह अन्य उपकरणों / ओएस संस्करणों के लिए क्षेत्र में नहीं हो रहा है, मेरा विचार यह है कि यह पहले से ही ओएस अपडेट में तय हो गया होगा (जो कि इस उपयोगकर्ता ने नहीं उठाया है, या संभवतः हुआवेई ने प्रदान नहीं किया है)।

backtrace:
  #00  pc 000000000006a808  /system/lib64/libc.so (tgkill+8)
  #01  pc 000000000001db50  /system/lib64/libc.so (abort+88)
  #02  pc 0000000000007f4c  /system/lib64/liblog.so (__android_log_assert+304)
  #03  pc 000000000004e314  /system/lib64/libhwui.so (_ZN7android10uirenderer12renderthread10EglManager13createSurfaceEP13ANativeWindow+192)
  #04  pc 000000000004c790  /system/lib64/libhwui.so (_ZN7android10uirenderer12renderthread14OpenGLPipeline10setSurfaceEPNS_7SurfaceENS1_12SwapBehaviorE+64)
  #05  pc 00000000000492b4  /system/lib64/libhwui.so (_ZN7android10uirenderer12renderthread13CanvasContext10setSurfaceEPNS_7SurfaceE+140)
  #06  pc 000000000005123c  /system/lib64/libhwui.so (_ZN7android10uirenderer12renderthreadL17Bridge_initializeEPNS1_14initializeArgsE+16)
  #07  pc 0000000000052fc4  /system/lib64/libhwui.so (_ZN7android10uirenderer12renderthread22MethodInvokeRenderTask3runEv+24)
  #08  pc 0000000000053f1c  /system/lib64/libhwui.so (_ZN7android10uirenderer12renderthread12RenderThread10threadLoopEv+348)
  #09  pc 0000000000011670  /system/lib64/libutils.so (_ZN7android6Thread11_threadLoopEPv+280)
  #10  pc 00000000000be1e8  /system/lib64/libandroid_runtime.so (_ZN7android14AndroidRuntime15javaThreadShellEPv+136)
  #11  pc 00000000000671b8  /system/lib64/libc.so (_ZL15__pthread_startPv+36)
  #12  pc 000000000001eee4  /system/lib64/libc.so (__start_thread+68)
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.