it-swarm.com.de

Android 7 Native Crash: libc.so tgkill

Ich sehe diesen nativen Absturz mit dem folgenden Stack-Trace.

Dies geschieht nur in Android 7.0 & 7.1. Der App, die seit einigen Jahren in Produktion ist, wurde nichts Neues hinzugefügt, aber mit mehr Geräten, die auf Nougat aktualisiert werden, kommt dieser Absturz jetzt häufig vor und wird zu einem Ärgernis.

Jeder Rat wäre dankbar.

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)

Hier ist eine Liste der Geräte, die betroffen sind: enter image description here

UPDATE 7/18:

Immer noch nicht in der Lage, an die Wurzel des Problems zu gelangen, entschied ich mich für ein Gerät zu kaufen, das am häufigsten vorkam und das einen vernünftigen Preis aufwies. Es stellte sich heraus, dass es sich um eine Samsung Galaxy J3 2017 Version mit Android 7.0 Leider kann der Absturz immer noch nicht reproduziert werden.

Ich habe auch einige Verbesserungen an der Speichernutzung der App in der Produktion vorgenommen, aber der Absturz ist noch nicht abgeschlossen.

Aus all den Kommentaren und meiner eigenen Forschung geht hervor, dass es sich um dynamisch verknüpfte NDKs handelt, aber ich verwende keine und es ist schwierig herauszufinden, ob eine der Abhängigkeiten vorliegt.

Ich würde gerne meine Abhängigkeiten mitteilen. Es wäre großartig, wenn andere, die sich mit demselben Problem befassen, herausfinden könnten, ob sie dieselben Abhängigkeiten verwenden. Vielleicht können wir den Schuldigen auf diese Weise erkennen.

// 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:[email protected]'
    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:[email protected]') { transitive = true; }
    compile('com.crashlytics.sdk.Android:crashlytics:[email protected]') { transitive = true; }

Bei Leuten, die vor demselben Absturz stehen, antworten Sie bitte in Kommentaren, wenn Sie eine dieser Abhängigkeiten/Versionen verwenden. Vielleicht können wir die Problemabhängigkeit herausgreifen.

92
AlexVPerl

Ein Blick auf den von Ihnen bereitgestellten Dump gibt einige Hinweise:

_ ZN7Android10uirenderer12renderthread12RenderThread10threadLoopEv

Dies zeigt an, dass der Fehler im UI-Thread aufgetreten ist.

libhwui.so x 6

Dies weist darauf hin, dass dies in der Mitte einiger Grafiken/UI-bezogener Codes geschieht.

libcutils.so - __Android_log_assert

Dies ist ein Assert-Handler, daher wurde höchstwahrscheinlich eine Art von Assert in libwhui verletzt.

Abbruch:

Dies ist die Anwendung, die den O/S anweist, "abnormal" herunterzufahren.

raise + pthread_kill + tgkill: Dies ist das Betriebssystem (Android), mit dem die App heruntergefahren wird.

Sie können einige Dokumentationen zum Debuggen solcher Abstürze sehen hier .

Ich fürchte, es ist wirklich schwierig, über diese grobe und ungenaue Interpretation der von Ihnen vorgelegten Daten hinaus zu spekulieren.

Wenn Sie den Fehler gefunden haben, während er an den Android Log Viewer angehängt war, würden Sie möglicherweise mehr anwendungsspezifische Daten haben (oder sogar eine Fehlermeldung, die die Assert-Funktion normalerweise ausgibt).

Mein Tipp ist, etwas wie AGRA zu verwenden, um alle Details des Fehlers aufzuspüren oder ein betroffenes Gerät zu finden und es tatsächlich zu reproduzieren, während es an das Gerät angeschlossen ist ein Debugger.

Viel Glück!

EDIT 2017-06-16 : Ich möchte nur einen zusätzlichen Kommentar von Fco P hinzufügen. Anscheinend hat Google beschlossen, einige Änderungen an dem Native vorzunehmen Bibliotheken dürfen in den neuesten Versionen von Android (7.x). Weitere Details finden Sie in dieser Link .

28
Lennart Rolland

Dies wird hier gemeldet: https://issuetracker.google.com/issues/37123764

So reproduzieren Sie: Rufen Sie einen betroffenen Modus ab, aktivieren Sie den Entwicklermodus und setzen Sie die Hintergrundaktivitäten auf 0. Aktivieren Sie auch "Abstürze im Hintergrund anzeigen".

Dann öffne die App und schließe sie wieder: Du wirst den Absturz sehen.

8
TjerkW

Nicht in Kommentaren (unzureichende Wiederholung).

Von den aufgeführten Abhängigkeiten verwenden wir:

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'

andere Versionen als deine. Ich habe den starken Verdacht, dass Play-Services-Maps den Fehler enthält.

Möglicherweise verwenden Sie Kartenfragmente im Viewpager wie wir und viele der bereits von Koji Matsubara erwähnten Personen ( https://issuetracker.google.com/issues/37123764 )

3
Deo

Ich hatte das gleiche Problem in der Google Play-Konsole für die gleichen Geräte wie Sie.

In meinem Fall war das Problem in TextureView mit Animation in einem separaten Thread mit dem Sperren und Entsperren der Zeichenfläche.

Ich habe die TextureView-Animation in die Invalidate-onDraw-Animation für 7 und 7.1 geändert Android und das hat geholfen.

2

Ich weiß nicht, vielleicht ist dieses Problem wie das unsere, vielleicht anders, weil ich in Abhängigkeiten ua carview sehe. Teilen Sie hier Hoffnung nützlich für jemanden in Zukunft

Ich hatte auch Probleme mit Android 7.0 und 7.1 unten)

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)

Nach Recherche und Suche bei Google habe ich cardview durch Framelayout ersetzt. Dieses Problem wurde dann behoben

1
songoku1610