在Android应用程序上,我正在使用AsyncTask
执行一些本机代码。
本机代码执行我在系统上编写并安装的native library
。
某些点上的库,以及父进程可能会崩溃,这给了我以下logcat消息:
Zygote I 由于信号(11)而退出处理X
但是,没有为父进程生成tombstone
,这使调试变得困难。子进程通常会继续执行..
当我在Android上收到关于纯C程序的SIGSEGV's
时,始终会生成tombstone
并且logcat
显示墓碑的一部分。
在这种情况下,它们都不会发生。
更新:logcat中与崩溃相关的所有信息:
Zygote I Process 19610 exited due to signal (11)
JavaBinder E !!! FAILED BINDER TRANSACTION !!!
ActivityManager W Exception thrown when sleeping: ComponentInfo{paschalis.inf.ed.ac.uk.hellojni/paschalis.inf.ed.ac.uk.hellojni.MainActivity}
ActivityManager W android.os.TransactionTooLargeException
ActivityManager W at android.os.BinderProxy.transactNative(Native Method)
ActivityManager W at android.os.BinderProxy.transact(Binder.java:496)
ActivityManager W at android.app.ApplicationThreadProxy.scheduleSleeping(ApplicationThreadNative.java:738)
ActivityManager W at com.android.server.am.ActivityRecord.setSleeping(ActivityRecord.java:1038)
ActivityManager W at com.android.server.am.ActivityStack.awakeFromSleepingLocked(ActivityStack.java:696)
ActivityManager W at com.android.server.am.ActivityStackSupervisor.comeOutOfSleepIfNeededLocked(ActivityStackSupervisor.java:2789)
ActivityManager W at com.android.server.am.ActivityManagerService.updateSleepIfNeededLocked(ActivityManagerService.java:10022)
ActivityManager W at com.android.server.am.ActivityManagerService.setLockScreenShown(ActivityManagerService.java:10156)
ActivityManager W at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:1332)
ActivityManager W at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2208)
ActivityManager W at android.os.Binder.execTransact(Binder.java:446)
JavaBinder E !!! FAILED BINDER TRANSACTION !!!
ActivityManager I Restarting because process died: ActivityRecord{2aa3463c u0 paschalis.inf.ed.ac.uk.hellojni/.MainActivity t53}
JavaBinder E !!! FAILED BINDER TRANSACTION !!!
...
libprocessgroup I Killing pid 19631 in uid 10095 as part of process group 19610
libprocessgroup I Killing pid 19631 in uid 10095 as part of process group 19610
libprocessgroup I Killing pid 19631 in uid 10095 as part of process group 19610
...
进程组是父进程(和崩溃进程),而19631进程是子进程。