什么是android logcat中的致命信号6

Ste*_*hot 37 c# java android xamarin

我是Android开发新手,我的应用程序在从活动切换11次时不断被杀死,而且只是说它

致命信号6(SIGABRT),tid 9485中的代码-6(Thread-141585)

在我的logcat中.

这是什么意思?

Sus*_*ver 23

没有更多细节(比如看一些代码).

1)不要阻止UI线程,这可能导致SIGABRT操作系统将杀死无响应的应用程序.

绑定和取消绑定每个活动,当我切换11次时,它崩溃了我的应用程序

2)确保你自己OnDestroy内部Activity正在清理自己.即删除所有你的Listeners/ Events然后调用Base.OnDestory.

3)一个外部(即BluetoothLeService)服务回调你的应用程序与侦听器现在为null/nil将导致挂起,因此a SIGABRT,见#2


Gio*_*rgi 11

根据维基百科:

SIGABRT信号被发送到进程以告诉它中止,即终止.当信号调用C标准库的中止功能时,信号通常由进程本身启动,但它可以像任何其他信号一样从外部发送到进程

它通常表示您的代码或您调用的某个库中存在某种错误.

另请参见:进程何时获得SIGABRT(信号6)?