Android源码面试宝典之JobScheduler从使用到原理分析JSS的启动

Posted itbird01

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android源码面试宝典之JobScheduler从使用到原理分析JSS的启动相关的知识,希望对你有一定的参考价值。

上文,我们以IntentService入手,先对JobScheduler进行了简单的实例编码使用。本文开始,我们开始就源码入手,开始深入学习、总结JobScheduler的内部实现原理。

前言

我们从使用代码入手,通过阅读JobScheduler源码,来开始对于其原理,进行深入解读。

ComponentName mServiceComponent = new ComponentName(this, MyJobService.class);
JobInfo jobInfo = new 

Android源码面试宝典之JobScheduler从使用到原理分析JobScheduler的使用

我们之前总结过HandlerThread、IntentService,http://t.csdn.cn/U7Qzr,知道了,在子线程执行一些定时任务,android已经给我们提供了现成的一些API。但是我们也知道,这些老的API随着android的逐步发展,里面的很多漏洞逐渐被开发者们发现。SharePreference的ANR典型问题、HandlerThread的无限循环问题、IntentService仅有一个线程的局限性、AsyncTask的内存泄露问题等等,我们我们总是看到,随着每个android新版本的发布,看到sdk上面总是有各种废弃 Deprecated 的字样。

本文,我们主要对IntentService的替代API接口JobScheduler,从简单的使用入手,然后逐步对内部的实现源码细节进行分析。

1. IntentService引入的背景

首先我们先看一下,android 8.0 之后,sdk中IntentService类的注释说明



/**
*这些主要是IntentService的使用说明,这里不再赘述,各位有兴趣的可以到小编专栏找相应的文章,查看
* IntentService is an extension of the @link Service component class that
* handles asynchronous requests (expressed as @link Intents) on demand.
* Clients send requests
* through @li

以上是关于Android源码面试宝典之JobScheduler从使用到原理分析JSS的启动的主要内容,如果未能解决你的问题,请参考以下文章

Android源码面试宝典之JobScheduler从使用到原理分析JobScheduler的使用

Android源码面试宝典MMKV从使用到原理分析

app 耗电优化之三 使用JobSchedule对任务进行合理排期

Android源码面试宝典MMKV从使用到原理分析

Android 面试宝典

Android 面试宝典