Android是否会从深度睡眠中唤醒以进行广播ACTION_TIME_TICK?从实验来看,我认为不是,但我正在寻找一个明确的答案.
我的实验涉及注册一个简单BroadcastReceiver的更新TextView接收:
registerReceiver(new BroadcastReceiver() {
int ctr = 0;
@Override
public void onReceive(Context context, Intent intent) {
testView.setText("Time ticks: " + ++ctr);
}
}, new IntentFilter(Intent.ACTION_TIME_TICK));
Run Code Online (Sandbox Code Playgroud)
在4个刻度处,我关闭了屏幕大约5分钟,然后将其重新打开,它读取了6个刻度.在13个刻度时,我将屏幕旋转了10分钟,然后将其重新打开,并且刻度数读数为14.无论我多长时间离开手机,这似乎只会增加1-2个刻度,这就是为什么我怀疑它不会在深度睡眠期间播放动作.
我查看了Android代码.没有这个广播不会唤醒手机.它使用一种AlarmManager.RTC类型Alarm来广播时间变化.
为什么你需要每分钟通知字面?
如何使用AlarmManager.RTC_WAKEUP类型设置自己的警报?
警告:每分钟都要耗尽电池电量.我建议不要经常这样做,比如每小时.
如果这有用,请告诉我.
灵光
| 归档时间: |
|
| 查看次数: |
6097 次 |
| 最近记录: |