android - Android应用程序是否有可能杀死自己的进程
问题描述
Android应用程序是否有可能杀死自己的进程?比如说,作为一项防篡改功能,该应用程序检测到其完整性已被破坏,例如通过检查应用程序签名者证书。然后它退出应用程序,但应用程序进程仍然在内存中徘徊。如果攻击者更改了 AndroidManifest.xml 以设置 android:debuggable="true",他仍然可以在 Android 设备监视器中查看它并在进程仍然存在的情况下调试/分析应用程序。
解决方案
您可以使用此代码终止进程
这将终止进程,但不一定会终止内存中的任务。因此,当应用程序重新启动时,活动堆栈(任务)将从上次重新创建 请在主活动中使用此代码(请不要在每个活动或子活动中使用):
@Override
public void onBackPressed() {
android.os.Process.killProcess(android.os.Process.myPid());
// This above line close correctly
}
推荐阅读
- html - 有一个居中的标签填充整个父 div
- c++ - Visual Studio 嵌套宏/模板类调试帮助
- vue.js - 为什么在 vue.config.js 中代理 404
- javascript - 如何在不取消 API 调用的情况下使用 axios 设置超时?
- c# - 将登录凭据存储在#if DEBUG 块中是否安全?
- c - 如何使用 C 和 libxml2 库在 XML 文件中查找特定标记的出现?
- javascript - 动态生成一个
- 从 jQuery 中的输入数组中列出
- r - R:我该如何进行数据[[k]]计算
- amazon-web-services - 删除或更新 Item 的正确方法
- google-cloud-platform - GCP:跨区域按比例分配流量(主动-主动)