服务:onTaskRemoved
或onDestroy
很少在最近的应用列表中滑动应用时被调用
在这种情况下,我应该如何正确停止录像?我刚刚损坏(不可播放)mp4文件
P.S。 android:stopWithTask="false"
当然是固定的(无论如何都是默认的)
答案 0 :(得分:0)
我碰巧编写了专门用于测试此行为的应用程序。我从来没有在我最近购买的Android 6设备上测试它,所以我刚才做了。主要活动在onCreate
中启动服务,并在onBackPressed
中停止。
在运行6.0.1的LG-K450(X Power)上,onTaskRemoved
被调用,100%可靠。
如果服务在后台运行,则会调用onTaskRemoved
,但不会调用onDestroy
,并且该进程将被终止。如果onStartCommand
返回START_STICKY
,则服务几乎立即重新启动。 (它过去需要几秒钟。)否则,当我重新启动主要活动时,它会重新启动。
如果服务在前台运行,仍然会调用onTaskRemoved
,但该服务不已终止。这是新的。在旧版本的Android上,前台服务将被终止并重新启动。
如果您没有看到onTaskRemoved
的来电,我首先怀疑是设备特定的错误。让我猜......三星?