Android提高后台服务进程优先级
来源:互联网 发布:安知玉如意txt网盘 编辑:程序博客网 时间:2024/06/04 23:29
该方法应该是Android系统前台service的一个漏洞,使用该方法启动服务后,通过adb shell cat proc/进程号/oom_adj 查看,运行在后台的服务其进程号(7.0后台进程为12)变成了2(6.0是2,7.0是4,前台进程0)
步骤:
1、常驻服务内启动时作为前台服务启动,并启动一个只用来辅助提高进程优先级的服务FakeService:
@Overridepublic int onStartCommand(Intent intent, int flags, int startId) { startForeground(FakeService.NOTIFY_ID, new Notification()); startService(new Intent(this, FakeService.class)); return super.onStartCommand(intent, flags, startId);}
2、辅助服务FakeService也启动为前台服务,但是一启动马上stop掉,onDestroy中调用stopForeground()方法,这样可以把常驻服务设置为前台服务了,而通知栏也不会有通知显示。
public static int NOTIFY_ID = 100101;@Overridepublic int onStartCommand(Intent intent, int flags, int startId) { Utils.logI(TAG, "onStartCommand"); startForeground(NOTIFY_ID, new Notification()); stopSelf(); return super.onStartCommand(intent, flags, startId);}@Overridepublic void onDestroy() { stopForeground(true); super.onDestroy();}
0 0
- Android提高后台服务进程优先级
- Android中提高后台服务进程优先级的方法
- Android 中提高后台服务优先级
- Android进程提高优先级
- android 提高进程的优先级
- android 提高进程的优先级
- android提高进程优先级的方法
- android提高进程优先级的方法
- android提高进程优先级的若干方法
- Android SERVICE后台服务进程
- 提高进程优先级
- 提高进程的优先级
- 如何提高Android后台进程存活率
- 如何提高Android后台进程存活率
- Android如何提高后台进程存活率
- 进程优先级与后台进程
- Android进阶之进程优先级及提高优先级的方法(Service进程防杀死)
- 服务 AIDL 进程优先级
- Java多线程之互斥
- 基于SpringBoot 开发
- java堆内存、栈内存、方法区
- 每N个数反转
- requirejs初体验
- Android提高后台服务进程优先级
- android studio使用过程中遇到的问题
- POJ P2442 Sequence
- Java代码优化技巧
- (UVA)1584
- expect的基本用法
- 抽象工厂--Java实现
- linux, kill掉占用60%多cpu的进程,几秒后换个pid 和 command 又出现?
- 应用require.js进行javascript模块化编程小试一例