什么是安卓日志中的致命信号6 [已关闭]

2022-08-31 17:03:41

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

致命信号 6 (SIGABRT),代码 -6 在 tid 9485 (线程-141585)

在我的日志中。

这是什么意思?


答案 1

没有更多细节(如看到一些代码)。

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

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

2)确保在你的内在,你正在清理自己。即删除所有 /,然后调用 .OnDestroyActivityListenersEventsBase.OnDestory

3) 外部(即)服务回调到您的应用程序,其侦听器现在为 null/nil 将导致挂起,因此请参见 #2BluetoothLeServiceSIGABRT


答案 2

根据维基百科:

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

它通常表示代码或调用的库之一中的某种错误。

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


推荐