Aug*_*aas 13 android android-widget
我想要一个小部件显示用户启动的公交车出发跟踪倒计时.我想每分钟左右更新一次小部件,从用户启动跟踪到总线离开时(即时间用完).
这个小部件需要比updatePeriodMillis允许的更频繁地更新,这是每30秒一次.我估计一分钟一次.
作为Android编程的新手,我可以想到一些方法来做到这一点,但我可能最终会以一种消耗太多电池等的方式来做这件事,所以我正在寻找更有经验的Android开发人员的一些见解.
我该如何启动计时器?如何从我的应用程序运行时访问小部件实例?等等.
Fed*_*dor 23
我会注册一个警报,每隔1分钟启动一次服务,服务会更新小部件UI
final Intent intent = new Intent(context, UpdateService.class);
final PendingIntent pending = PendingIntent.getService(context, 0, intent, 0);
final AlarmManager alarm = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
alarm.cancel(pending);
long interval = 1000*60;
alarm.setRepeating(AlarmManager.ELAPSED_REALTIME, SystemClock.elapsedRealtime(),interval, pending);
Run Code Online (Sandbox Code Playgroud)
AlarmManager.ELAPSED_REALTIME不会影响设备,因为它不会影响电池寿命.
| 归档时间: |
|
| 查看次数: |
9150 次 |
| 最近记录: |