Android Job框架:Trigger
你知道 Android L 中新增的 JobScheduler 吗,就像其名字所表示的,你可以定义自己的作业,然后在某些条件下执行,例如是充电时、断网时或者设备空闲时等等。这是非常棒的特性,但只在 API 21 上才有效,老版本怎么办呢? 你现在可以试试 Trigger。
Trigger 的特性
-
单个作业支持多个条件组合
-
内部条件:充电中\无法检测网络状态\设备空闲
-
支持作业持久化,这意味着可在设备重启时触发
-
支持作业截止时间
-
可根据配置在后台或者主线程中运行作业
示例代码:
1
2
3
4
5
6
7
8
9
10
11
12
|
Job job =
new
Job(
new
Action() {
@Override
protected
void
act() {
//do something
}
}).withExtra(
new
Condition() {
@Override
public
String[] getAction() {
return
new
String[]{YOUR_BROARCAST};
}
});
trigger.schedule(job);
|