我有一个由我的Android应用程序启动的后台服务,该后台服务以自己的全局流程运行,与应用程序的流程分开。我使用docs的site content
清单属性来完成此操作:
process
我的服务是一项长期运行的服务,它监听来自外围设备的硬件输入。为其提供自己的过程的想法是防止服务中的异常导致应用程序崩溃。问题出在哪里:当服务崩溃时,即使据说它在与应用程序不同的进程中运行,它仍然会使我的应用程序崩溃。
我正在导致服务因一个简单的故意异常而崩溃:
android:process=":scannerProcess"
我不明白为什么这会使应用程序崩溃,但是只有服务会崩溃。 Logcat显示我的进程确实存在,所以为什么该进程崩溃会使我的应用程序也崩溃?
throw Exception("Intentional crash!")