106 votes

Android 7 Native Crash: libc.so tgkill

Je vais voir ce natif de collision avec les éléments suivants trace de la pile.

Ce qui se passe dans Android 7.0 & 7.1 seulement. Rien de nouveau n'a été ajouté à l'application, qui a été en production depuis quelques années, mais avec plus de périphériques mis à jour pour le Nougat cet incident se produit fréquemment maintenant et est en train de devenir une nuisance.

Tout conseil serait apprécié.

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)

Voici une liste de périphériques qui sont effectuées: enter image description here

Mise à JOUR 7/18:

Toujours pas en mesure d'obtenir à la racine de cela, j'ai donc décidé d'acheter un appareil qui a la plupart des occurrences et a été à un prix raisonnable, qui s'est avéré être le Samsung Galaxy J3 2017 version avec Android 7.0. Mais, malheureusement, toujours pas en mesure de reproduire l'erreur.

J'ai aussi fait quelques l'utilisation de la mémoire des améliorations à l'application dans la production, mais l'accident est encore en cours.

À partir de toutes les observations et mes propres recherches, il semble être liée à liée de façon dynamique NDKs, mais je ne suis pas à l'aide de tout et il est difficile de savoir si les dépendances ne.

Je voudrais partager mes dépendances, il serait bien si d'autres gens faisant face à la même question pourrait appeler si ils sont à l'aide de l'un de ces mêmes dépendances - peut-être, nous pouvons repérer le coupable de cette façon.

// 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; }

Pour les gens face à la même incident, merci de répondre dans les commentaires si vous utilisez l'une de ces dépendances / versions. Nous pouvons peut-être le problème de la dépendance.

35voto

Lennart Rolland Points 862

En regardant l'image que vous fournie donne quelques indices:

_ZN7android10uirenderer12renderthread12renderthread10threadloopev

Cela indique que l'erreur s'est produite dans le thread de l'INTERFACE utilisateur.

libhwui.donc x 6

Ceci indique que ce qui se passe dans le milieu de certains graphiques/ui le code associé.

libcutils.donc - __android_log_affirmer

C'est une assertion de gestionnaire, de sorte que la plupart probablement une sorte de faire valoir a été violé en libwhui.

abandonner:

C'est l'application de raconter l'O/S à l'arrêt "anormalement".

lever + pthread_kill + tgkill: C'est l'O/S (Android), la fermeture de l'application.

Vous pouvez voir une partie de la documentation à des fins de débogage ces sortes d'accidents ici.

De toute façon, je le crains, il est vraiment difficile de spéculer au-delà de cette grossière et imprécise de l'interprétation des données que vous avez présenté.

Peut-être que si vous avez attrapé le bug alors qu'il était attaché à l'Android visionneuse du journal, vous auriez plus de demande de données spécifique (ou même un message d'erreur qui l'affirment fonction met généralement en sortir).

Mon conseil est d'utiliser quelque chose comme AGRA pour traquer tous les détails relatifs à l'erreur, ou de l'obtenir d'un périphérique concerné et fait reproduire alors qu'il est fixé à un débogueur.

Bonne chance!

EDIT 2017-06-16: je veux juste ajouter quelques informations supplémentaires courtoisie commentaire par Fco P., Apparemment, Google a décidé de faire quelques changements à ce natif de bibliothèques sont autorisées à s'exécuter dans les dernières versions d'Android (7.x). Plus de détails dans ce lien.

9voto

TjerkW Points 512

Ceci est rapporté ici: https://issuetracker.google.com/issues/37123764

Pour reproduire: Obtenez un mode affecté, activez le mode développeur et définissez les activités en arrière-plan sur 0. Activez également "afficher les incidents à l'arrière-plan".

Ensuite, ouvrez l'application et fermez-la à nouveau: vous verrez le crash.

3voto

Deo Points 73

Pas dans les commentaires (représentant insuffisant).

Parmi les dépendances que vous avez énumérées, nous utilisons:

 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'
 

différentes versions que la vôtre. Je soupçonne fortement que play-services-maps contient le bogue.

Peut-être utilisez-vous fragment de carte dans viewpager comme nous le faisons et de nombreuses personnes déjà mentionnées par Koji Matsubara ( https://issuetracker.google.com/issues/37123764 )

3voto

Sergei Belozerov Points 301

J'ai eu le même problème dans Google Play Console pour les mêmes appareils que vous.

Dans mon cas, le problème était dans TextureView avec une animation dans un fil séparé avec verrouillage et déverrouillage de la toile.

J'ai changé l'animation TextureView en animation invalidate-onDraw pour 7 et 7.1 android, ce qui m'a aidé.

3voto

songoku1610 Points 180

Je ne sais pas, peut-être que ce problème comme le nôtre, est peut-être différent, car je vois dans les dépendances notamment carview . Partagez ici l'espoir utile pour quelqu'un à l'avenir

J'ai aussi fait face au problème sur Android 7.0 et 7.1 ci-dessous

 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)
 

Après des recherches et une recherche sur google, j'ai remplacé cardview par Framelayout alors ce problème a été résolu

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X