android 模拟应用因内存不足被后台杀死命令

Android开发中,有时候我们需要测试下后台进程被杀,然后重新进入App时恢复现场的case。如果采用填充内存的方式,比较麻烦,下面介绍几种快速模拟后台进程被杀的方式:

方式1:

最简单的方法是在DDMS中点击”Stop Porcess”杀掉你的程序,在你调试程序的时候可以这样做。

方式2:

适合debug程序
Android Studio中打开Android Monitor,选择进程,将app按home键退到后台,点击terminate application按钮即可

方式3:

adb shell am force-stop package-name 应用在前台强制关闭,强制停止指定的package包应用。

adb shell am kill package-name 应用通过home键已经停留在后台使用,杀死指定package包应用进程,该命令在安全模式下杀死进程,不影响用户体验。参数选项:–user <USER_ID> | all | current: 指定user进程杀死,如果不指定默认为所有users。(关于USER_ID下面会介绍到)

adb shell am kill-all              应用通过home键已经停留在后台使用,杀掉所有后台程序,需要先将目标程序按home进入后台,然后打开一个其他程序

方式4:

适合所有程序
打开手机开发者选项-后台进程限制-不允许后台进程,同样按home键退到后台后,打开个其他应用再退出,进程就被杀了

方式5:

通过模拟器或者一个Root过的真机:

  1. 按Home按键退出你的程序;
  2. 在控制台,敲入如下命令(Windows系统下 WIN + R -> cmd -> 回车)
找到该APP的进程ID adb shell ps 
找到你APP的包名 
Mac/Unix: adb shell ps | grep your.app.package 
按照上述命令操作后,看起来是这样子的: 
USER PID PPID VSIZE RSS WCHAN PC NAME # u0_a198 21997 160 827940 22064 ffffffff 00000000 S your.app.package 
通过PID将你的APP杀掉 adb shell kill -9 21997
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Android 应用程序被用户手动杀死时,应用程序会收到 `onDestroy()` 生命周期回调函数。但是,在这种情况下,您无法阻止应用程序被杀死。因此,如果您希望在应用程序被杀死时执行某些操作,例如重新启动应用程序或发送通知等,您需要使用一些其他方法。 一种方法是使用 Android 的 `Service` 组件。通过创建一个 `Service`,您可以在应用程序被杀死后在后台继续运行代码。要监听应用程序被杀死的事件,您可以在 `Service` 中实现 `onTaskRemoved()` 方法。 在 `onTaskRemoved()` 方法中,您可以执行您希望在应用程序被杀死时执行的操作。例如,您可以使用 `PendingIntent` 发送一个通知,提示用户重新启动应用程序。 以下是一个示例代码片段,演示如何在 `Service` 中监听应用程序被杀死的事件: ```java public class MyService extends Service { @Override public void onCreate() { super.onCreate(); // 在此处执行任何必要的初始化操作 } @Override public int onStartCommand(Intent intent, int flags, int startId) { // 在此处执行您希望在后台运行的代码 return START_STICKY; } @Override public void onTaskRemoved(Intent rootIntent) { // 在此处执行您希望在应用程序被杀死时执行的操作 super.onTaskRemoved(rootIntent); } @Override public IBinder onBind(Intent intent) { // 如果您的 Service 不提供绑定,则返回 null return null; } } ``` 请注意,使用 `Service` 可能会对设备的电池寿命产生影响。如果您希望在应用程序被杀死时执行某些操作,但不需要在后台运行代码,请考虑使用 Android 的 `AlarmManager` 和 `BroadcastReceiver` 组件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值