5

我试图弄清楚如何防止用户使用强制停止杀死应用程序。我试图检测用户何时打开设置-应用程序-管理应用程序等活动并尝试强制停止受保护的应用程序。还有一些任务管理器应用程序允许您终止进程。

我知道这在 Android 中是可能的,因为 AppLock 或 Super AppLock 等应用程序可以做到这一点。我只是找不到有关如何执行此操作的任何信息。

现在我正在尝试轮询 ActivityManager.RunningTaskInfo 以检测受限制的活动,但是由于它们在不同的设备上具有不同的名称,因此效果不佳。

有更好的方法吗?AppLock 和类似的应用程序如何实现此功能?

4

2 回答 2

2

已经提出并回答了非常相似且相关的问题。

长话短说,不,你不能阻止用户或操作系统因为内存管理而杀死你的应用程序。

于 2012-08-08T15:00:34.913 回答
1

我想我想通了。

使用 ActivityManager.getRunningTasks() 函数似乎是最好的解决方案。然后你只需要每次顶部任务是“com.android.settings.applications.RunningServiceDetails”或“com.android.settings.applications.InstalledAppDetails”时弹出一个Activity(带有pin码)。

不幸的是,无法查看用户是否试图杀死受保护的应用程序或其他应用程序,因此访问权限仅限于所有这些应用程序。

市场上也有一堆任务管理器使用 ActivityManager.killBackgroundProcesses() 方法来杀死进程,但您可以通过使用警报来使应用程序起死回生。

于 2012-08-10T17:24:06.560 回答