Android 进程保活 Notification详细说明

本来打算对Notification进行详细说明  和源码解读的  发现写的时刻又不想写。

Notification 保活

算了 直接上源代码

@Overridepublic int onStartCommand(Intent intent, int flags, int startId) {    if (Build.VERSION.SDK_INT < 18) {        startForeground(GRAY_SERVICE_ID, new Notification());    } else {        Intent innerIntent = new Intent(context, AuxiliaryService.class);        startService(innerIntent);        Notification notification = new Notification();        startForeground(GRAY_SERVICE_ID, notification);    }    return super.onStartCommand(intent, flags, startId);}
/** * 辅助Service 用来开启一个通知 就结束   不要创建内部类  不然回收有问题 */public class AuxiliaryService extends Service {    @Nullable    @Override    public IBinder onBind(Intent intent) {        return null;    }    @Override    public void onCreate() {        super.onCreate();    }    @Override    public int onStartCommand(Intent intent, int flags, int startId) {        startNotification();        return super.onStartCommand(intent, flags, startId);    }    /** 启动通知*/    private void startNotification(){        Notification notification = new Notification();        this.startForeground(MQTTService.GRAY_SERVICE_ID, notification);        stopSelf(); //关键  如果AuxiliaryService 没有与什么组件绑定  系统就会回收        stopForeground(true);    }}
时间: 2024-10-02 21:22:20

Android 进程保活 Notification详细说明的相关文章

Android进程保活-自“裁”或者耍流氓

本篇文章是后台杀死系列的最后一篇,主要探讨一下进程的保活,Android本身设计的时候是非常善良的,它希望进程在不可见或者其他一些场景下APP要懂得主动释放,可是Android低估了"贪婪",尤其是很多国产APP,只希望索取来提高自己的性能,不管其他APP或者系统的死活,导致了很严重的资源浪费,这也是Android被iOS诟病的最大原因.本文的保活手段也分两种:遵纪守法的进程保活与流氓手段换来的进程保活. 声明:坚决反对流氓手段实现进程保活 坚决反对流氓进程保活 坚决反对流氓进程保活

关于 Android 进程保活,你所需要知道的一切【转】

早前,我在知乎上回答了这样一个问题:怎么让 Android 程序一直后台运行,像 QQ 一样不被杀死?.关于 Android 平台的进程保活这一块,想必是所有 Android 开发者瞩目的内容之一.你到网上搜 Android 进程保活,可以搜出各种各样神乎其技的做法,绝大多数都是极其不靠谱.前段时间,Github还出现了一个很火的“黑科技”进程保活库,声称可以做到进程永生不死. 怀着学习和膜拜的心情进去Github围观,结果发现很多人提了 Issue 说各种各样的机子无法成功保活. 看到这里,我

关于 Android 进程保活,你所需要知道的一切

早前,我在知乎上回答了这样一个问题:怎么让 Android 程序一直后台运行,像 QQ 一样不被杀死?.关于 Android 平台的进程保活这一块,想必是所有 Android 开发者瞩目的内容之一.你到网上搜 Android 进程保活,可以搜出各种各样神乎其技的做法,绝大多数都是极其不靠谱.前段时间,Github还出现了一个很火的“黑科技”进程保活库,声称可以做到进程永生不死. 怀着学习和膜拜的心情进去Github围观,结果发现很多人提了 Issue 说各种各样的机子无法成功保活. 看到这里,我

Android进程保活

Android进程回收机制 Low Memory Killer 微信团队原创分享:Android版微信后台保活实战分享(网络保活篇) 微信团队原创分享:Android版微信后台保活实战分享(进程保活篇) 关于 Android 进程保活,你所需要知道的一切 (同上: Android进程保活详解,一篇文章解决你的所有疑问) Android后台保活实践总结:即时通讯应用无法根治的“顽疾” Android 进程常驻----MarsDaemon使用说明

Android进程保活全攻略(上)

对于每个公司的APP来说,当然都希望自己APP的进程尽量的不被杀死,于是乎,就有了一些列进程保活的方法出现,网上也有很多关于这类的文章,但网上很多资料往往只告诉了思路,并未将实现代码展示,本次我的博客将分为上下两篇,阐述关于进程保活的所有方法,以及实现的方式,若有错漏之处,大家可以在博客进行留言. ** 1.进程保活-背景知识 ** (1)什么时候系统会去杀死进程? Android系统会在内存不足的时候去将进程杀死,俗称Low Memory Killer,它是 基于linux内核的 OOM Ki

android进程保活的几种方法

方案一: 开启一个像素的Activity 据说这个是手Q的进程保活方案,基本思想,系统一般是不会杀死前台进程的.所以要使得进程常驻,我们只需要在锁屏的时候在本进程开启一个Activity,为了欺骗用户,让这个Activity的大小是1像素,并且透明无切换动画,在开屏幕的时候,把这个Activity关闭掉,所以这个就需要监听系统锁屏广播. 方案二: 据说这个微信也用过的进程保活方案,该方案实际利用了Android前台service的漏洞.原理如下对于 API level < 18 :调用start

Android 进程保活招式大全

目前市面上的应用,貌似除了微信和手Q都会比较担心被用户或者系统(厂商)杀死问题.本文对 Android 进程拉活进行一个总结. Android 进程拉活包括两个层面: A. 提供进程优先级,降低进程被杀死的概率 B. 在进程被杀死后,进行拉活 本文下面就从这两个方面做一下总结. 1. 进程的优先级 Android 系统将尽量长时间地保持应用进程,但为了新建进程或运行更重要的进程,最终需要清除旧进程来回收内存. 为了确定保留或终止哪些进程,系统会根据进程中正在运行的组件以及这些组件的状态,将每个进

Android Studio 第六十八期 - Android8.0 进程保活

代码已经整理好,效果如下图: 地址:https://github.com/geeklx/myapplication2018/tree/master/p022_jincheng_baohuo 保活手段 当前业界的Android进程保活手段主要分为** 黑.白.灰 **三种,其大致的实现思路如下: 黑色保活:不同的app进程,用广播相互唤醒(包括利用系统提供的广播进行唤醒) 白色保活:启动前台Service 灰色保活:利用系统的漏洞启动前台Service 黑色保活 所谓黑色保活,就是利用不同的app

Android进程回收的一些知识

关于OOM_ADJ说明: Android 进程易被杀死的情形: 参考:Android进程保活招式大全