背景:我的应用程序(A)被其他应用程序(B)用来代为执行操作。
预期结果:
当前行为::startActivityForResult
在应用B(窗口)中打开应用A的被调用活动,因此当我崩溃应用B时,应用A onDestroy
baseActivity被调用,但是而不是由应用程序A启动的线程。如果我将startActivity
与singleTask
一起使用launchMode
,则不是这种情况,因此在以后的方法中,我在应用程序A窗口中启动了应用程序A活动。而不是在应用程序B窗口中,因此我可以模拟应用程序A的崩溃,并得到预期的结果。
基于Ian Lake的comment,似乎没有办法在自己的应用后堆栈中启动应用A的活动。
[编辑1]
想分享此信息:
当我直接通过启动器图标启动我的应用并杀死它=>该过程立即被杀死。
当我通过startActivityForResult =>启动我的应用程序时,该过程在大约2/3秒后被终止。
使用过:
adb shell
top -m 5