Я бачу цей натовп аварій із наступним слідом стека.
Це відбувається лише в Android 7.0 та 7.1. Нічого нового не додано в додаток, який випускається вже кілька років, але в міру оновлення нових пристроїв до Nougat ця аварія трапляється часто і стає неприємністю.
Будь-яка порада буде вдячна.
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:
Все ще не вдалося докорінитися до цього, тому я вирішив придбати пристрій, який мав найбільше випадків, і за доступними цінами, який виявився версією Samsung Galaxy J3 2017 з Android 7.0. На жаль, я все ще не можу відтворити збій.
Я також вніс декілька покращень у використанні пам'яті програми у виробництві, але аварія все ще відбувається.
З усіх коментарів і моїх власних досліджень, схоже, це пов'язано з динамічно пов'язаними NDK, але я не використовую жодного і важко з'ясувати, чи є якась із залежностей.
Я хотів би поділитися своїми залежностями, було б чудово, якби інші люди, які стикаються з тією ж проблемою, могли закликати, якщо вони використовують одну і ту ж залежність - можливо, ми можемо виявити винуватця таким чином.
// 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; }
Люди, які стикаються з тим самим збоєм, будь ласка, відповідайте у коментарях, якщо ви використовуєте будь-яку з цих залежностей / версій. Можливо, ми можемо виділити проблемну залежність.