我正在开发两个应用程序:
- >应用程序A:它连接到蓝牙设备,检索一些数据,处理此数据并向App B广播意图
- >应用B:它收到此意图并显示结果。
App A必须继续运行才能继续向App B发送数据。
一直工作正常,直到本周我做了一些视觉上的更改并将我的Android设备更新到V7.0。
现在,当我切换到App B并看到结果时,我的应用程序A停止(在android studio的调试窗口中显示DEAD消息)。如果我更改回应用程序A,当前活动将自动重新启动并再次正常工作。
我在android studio的调试窗口中没有收到任何异常或错误消息。
有关此问题的任何想法或信息。我必须说我已经阅读了很多问题和文档,但我找不到这个问题的原因。
(抱歉英语不好)
答案 0 :(得分:1)
一直工作正常,直到本周我做了一些视觉效果 更改并将我的Android设备更新为V7.0。
7.0引入了numerous changes aimed at improving battery life。你的应用程序A很可能会受到这些变化的影响,特别是如果它是内存/ CPU密集型的,听起来可能就是这样。
App A必须继续运行才能继续向App B发送数据。
如果是这种情况,您可能需要使应用A成为foreground Service以确保其继续运行。
从架构上来说,如果你的用例是让App B打开而app A保持管道数据,这可能会更有意义。你的App A之前没有死的事实可能只是幸运的机会。在进入后台后,它最终会被系统杀死。