Android 7 Natif Crash: libc.donc 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:
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 le crash.
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.
- La plupart des accidents je vois sont à venir à partir de périphériques Samsung, en particulier, le Galaxy S6. Aucune chance de trouver celui-ci?
- Il ya d'autres appareils effectuée comme Nexus & Experia, cependant la plupart de son Samsung comme ils ont plus de part de marché. Ajout d'une liste de périphériques à la question. Toujours à essayer de comprendre celui-ci, ne peut pas se reproduire à tous les...
- Peut-être que je pense de votre langue natale, le crash est le même problème suivant. issuetracker.google.com/issues/37123764 Ma demande a bug similaire, mais je ne trouve pas de solution... je pense que android 7, 7.1 bug.
- merci. J'ai vu que le lien avant d', leur question traite de la Caméra de l'API. Nous ne sommes pas à l'utiliser n'importe où dans notre code de sorte qu'il doit être quelque chose d'autre.
- Avez-vous des bibliothèques natives dans votre projet? Nous avons également ce crash dans notre application. Nous sommes à l'aide de seulement deux bibliothèques avec les modules natifs: le Royaume et de la Fresque. Avez-vous l'un d'entre eux? Peut être est ce une piste.
- Nous ne sommes pas à l'aide de toutes les bibliothèques natives directement. Est-il un moyen pour savoir si l'un de nos dépendances natif libs en interne?
- Est ce que quelqu'un à l'aide de cartes et de l'endroit?
- Oui, les deux cartes et localisation sont utilisées.
- AlexVPerl s'il vous plaît essayez d'utiliser Android Studio Apk Analyseur de [developer.android.com/studio/build/apk-(analyzer.html]https://.... Si Vous utilisez des bibliothèques natives ils sont dans "libs" le dossier. S'il vous plaît laissez-moi savoir avec un que Vous avez là. @ThierryLathuille j'ai essayé de garder cette règle: Mais je ne peux pas écrire une bonne réponse sans plus d'informations! _ les Réponses n'ont pas à être exhaustive, infaillible, ils ont juste besoin d'essayer de répondre à la question (...) "je ne suis pas sûr de ce que la cause de votre problème, mais si c'est X, vous pouvez le résoudre par doing_
- Je suis aussi en voyant cela, exactement la même trace de la pile et de l'exacte même liste d'appareils concernés! La dernière version a été publiée le 15 Mai, mais j'ai deux lignes dans les accidents de la page avec le même "tgkill" de nom.
- Merci pour le partage, pourriez-vous préciser ce que vous entendez par " deux lignes dans les accidents de la page? Voulez-vous dire, vous voyez tout de votre code de suivi de pile ou n'est-il code natif? Aussi juste par curiosité, quelle est la version de Play-Services & Soutien-v4 bibliothèque utilisez-vous?
- J'ai essayé de l'Apk de l'Analyseur, mais je ne vois aucune info sur les dépendances - où dois-je chercher? Aussi, mon dossier libs a seulement les fichiers jar, de ce que j'ai vu natif libs ont une extension différente, non?
- pour moi, il semble que la mémoire de piétinement des bugs dans votre code natif...Essayez d'utiliser valgrind outils sur android pour détecter mémoire natif de bugs...
- S'il vous plaît, la liste de vos dépendances. Et n'oubliez pas, nougat changé la manière dont les applications peuvent accéder à NDK code: developer.android.com/about/versions/nougat/...
- Je suis aussi confronté à ce exactement le même problème, exactement la même trace de la pile, exactement la même dispositifs affectés, à l'aide de zéro bibliothèques natives, et en utilisant l'emplacement et cartes de services. C'est peut-être lié à ça? Quelqu'un a une solution?
- Idem, voir exactement la même tgkill accidents signalés dans Google Play. Je suis en cours d'exécution par le biais de l'application sur une S8+, je ne peux pas reproduire le crash et je ne vois pas de voir tout le logcat avertissements liés à la Nougat lié bibliothèques natives: developer.android.com/about/versions/nougat/....
- Nous avons rencontré exactement le même problème. Nous avons essayé la mise à niveau à la dernière pièce, services et... prier!!!
- ne soit pour les aider ? 🙂
- Nous avons également référence à la 4 com.android.bibliothèques de prise en charge (bien que nous n'utilisons que de ne pas utiliser cardview ou recycleview) et le jeu de services de cartes et de jouer-services-emplacement des bibliothèques.
- pourriez-vous s'il vous plaît partager versions de soutien et de cartographier les bibliothèques que vous utilisez? Merci.
- En fait, je ne suis pas directement référençant l'emplacement de la bibliothèque. Pour les cartes, je suis l'aide de la version 29.0.0.2. Pour les bibliothèques de prise en charge, je suis l'aide de la version 23.3.0.
- Au cours des 2 derniers mois, nous avons plus de 30k de ces tgkill accidents effectuer 14k+ utilisateurs. J'ai passé les deux dernières semaines en enlevant lentement un 3ème partie les bibliothèques que nous utilisons et libérant de la mise en scène des déploiements pour voir si je peux suivre ce qui est à l'origine de ces accidents. Tout est retiré, sauf pour la Rénovation, de la Okhttp, Jackson, Picasso, Firebase, Google Play Services, MultiDex, et Apache Héritage. Basé sur ce fil, nous discutons de la libérant de 1% de nos utilisateurs, avec nos cartes retirées. Actuellement en cours d'exécution: com.google.android.gms:jouer-services-cartes:11.0.1'
- merci pour ce partage. Nous sommes également à l'aide d'Apache Héritage, Picasso, Rénovation & OkHttp. Mais nous sommes aussi à l'aide de google maps, ce qui n'est pas une option pour l'enlever. Merci de partager vos résultats avec nous une fois que vous avez mis en place un "plan-de moins en moins" version, vos résultats seront très précieux.
- Nous avons publié une mise en place graduelle avec seulement supprimant les com.google.android.gms:jouer-services-cartes:11.0.1'. Après l'avoir regardée, tous les week-end, il n'y avait pas de cas de la tgkill crash. Oui, ce problème est provoqué par les cartes, comme mentionné par @Deo et liée à la question tracker ci-dessous.
- merci beaucoup pour le suivi sur le présent et le partage de vos résultats. Enfin, nous avons une preuve tangible de lier ce problème à une bibliothèque. C'est très troublant comme 11.0.1 est une jolie version récente, juin 2017. Avez-vous, par hasard, de l'utiliser à l'intérieur d'un ViewPager? Aussi, ne vous projetez de passer à 11.0.4 pour voir si elle résout ce problème ?
- Nous avons mis à jour Jouer à des services de v11.0.4 et le Soutien de la Bibliothèque v26. Malheureusement, il est encore en train de se faire. Nous n'avons pas d'usage de mettre SupportMapFragment ou MapView à l'intérieur d'un ViewPager à tous. Nous avons également vérifié, nous nous dirigerons le cycle de vie de MapView correctement developers.google.com/android/reference/com/google/android/gms/....
- Nous avons 2 cartes dans notre code de téléphone de la base, et 1 dans notre tablette de la base de code. Nous affichons une GoogleMap dans un MapFragment dans un ViewPager sur l'un de nos principaux écrans et je suppose que c'est ce qui est à l'origine du problème, mais notre équipe n'a pas été en mesure de reproduire le crash. J'ai une version normale de sortir aujourd'hui/demain avec la v11.0.2. J'espère ensuite, commencer à faire de la scène, en plus des déploiements où je confirme la bonne carte, et d'essayer de comprendre comment le corriger. Nous avons un nouveau design, qui sortent dans quelques mois et nous ne voulons pas de cette même question apparaissant si Google ne veut pas résoudre ce problème.
- Vous disposez de tous les cas de l'utilisation SupportMapFragment comme un enfant fragment? Nous ne certains, mais nous ne sommes pas sûr si elle peut être la cause ou pas. Aussi, si une Activité qui contient SupportMapFragment ou MapView fuites, ça va être la cause de trop?
- Oui, nous sommes aussi confrontés à perdre les utilisateurs en raison de ce problème. Si Google n'a pas de résoudre ce problème et nous ne pouvons pas trouver aucune solution de contournement, nous allons considérer Mapbox mapbox.com/android-docs/map-sdk/overview.
- Exactement le même crash de Galaxy les appareils fonctionnant sous Android 7.0.
- J'ai commencé à voir le même crash après la mise à jour Crashlytics(tissu) avec com.crashlytics.sdk.android:crashlytics-ndk:1.1.6@aar
- survenant dans android 6.0 trop et surtout que la série samsung galaxy..
- Pour ceux qui utilisent MapFragment, en issuetracker.google.com/issues/35826109, il est suggéré que la désactivation de setSharedElementsUseOverlay peut corriger le crash. Bien que je ne suis pas sûr que c'est le même problème que celui décrit ici (problème dans mon lien ci-dessus semble 100% reproductible, tandis que le problème ce n'est DONC pas). @FinHead avez-vous été en mesure de déterminer la cause de racine ou de corriger le problème par hasard?
- Nous avons eu une nouvelle application de la conception qui a été, nous avons travaillé sur tellement que j'ai supprimé l'affichage de la carte dans notre onglet pour se débarrasser de l'accident. Je ne suis plus avec cette application l'équipe et n'ont pas la possibilité de tester l'setSharedElementsUseOverlay correctif. Bonne Chance!
- J'ai récemment ajouté Firebase crashlytics. Le tgkill apparaît dans le Jeu de la Console de journaux, mais pas dans Firebase journaux.
- Il a l'air suspect pour moi que
AndroidNativeBuffer
à partir de Android 4.4 se distingue de Android 8.1. Ils font usage de l'un de réservé pointeurs, donc peut-être que si vous n'avez pas à zéro l'objet correctement qui est la cause de l'accident. C'est juste une suggestion qui je ne peux pas tester pour le moment, mais serais heureux si quelqu'un vérifie - a-t-on jamais en mesure de résoudre ce problème tout en utilisant Google maps? Je suis toujours confronté à cela et il ne se produit que sur les Samsung avec Android 7.0, nous utilisons SupportMapFragment comme un enfant fragment
Vous devez vous connecter pour publier un commentaire.
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
Cela 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é dans
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 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 out).
Mon conseil est d'utiliser quelque chose comme AGRA la trace de 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!
MODIFIER 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.
C'est indiqué ici:
https://issuetracker.google.com/issues/37123764
À reproduire: Obtenir un touché mode, activer le mode développeur, et de définir des activités d'arrière-plan à 0. Aussi activer "afficher l'arrière-plan se bloque".
Puis ouvrez l'application, puis fermez-le à nouveau:
Vous verrez le crash.
Pas dans les commentaires (pas assez rep).
Les dépendances que vous avez énumérés, nous utilisons:
versions différentes de la vôtre.
J'ai une forte suspection qui jouent-services-cartes contient le bug.
Peut-être que vous utilisez fragment de carte en viewpager comme nous le faisons et de nombreuses personnes en question a déjà été mentionné par Koji Matsubara (https://issuetracker.google.com/issues/37123764)
J'ai eu le même problème dans le google play de la console pour les mêmes appareils que vous.
Dans mon cas, le problème a été en TextureView avec animation dans le thread séparé avec verrouillage et de déverrouillage de la toile.
J'ai changé TextureView d'animation pour les invalider-onDraw animation pour les 7 et 7.1 android et qui m'ont aidé.
Je ne sais pas, peut-être que ce problème, comme la nôtre, peut-être différente, parce que je vois dans les dépendances, y compris
carview
. De partager ici l'espoir utile pour quelqu'un dans le futurJ'ai aussi face à problème sur Android 7.0 et 7.1 soufflet
Après recherche sur gooogle, j'ai remplacé
cardview
parFramelayout
puis, ce problème a été résolucardview
parFramelayout
ensuite, ces problèmes ont été résolus, ce problèmes se produisent seulement sur Android 7.xbecause I see in dependencies have including carview
semblent n'ont pas de correspondance avec la questionQue je vois cette question à partir d'un rapport de crash sur un périphérique de l'utilisateur - 'Huawei Honor 7X (HWBND-H)' - en cours d'exécution Android 8.0. Depuis, il ne se produit pas dans le champ à d'autres appareils/versions de système d'exploitation, ma pensée est qu'il pourrait déjà été fixé dans les mises à jour OS (que cet utilisateur n'a pas ramassé, ou, éventuellement, Huawei n'a pas fourni).