我拥有 iOS 背景,具有中级 Android 知识。无论如何,对于这项任务,我需要知道我到底需要做什么。我的应用程序需要检查用户是否在预定义的时间位于或靠近预定义的位置。获取用户位置不是问题。
我的猜测是使用 AlarmManager
、BroadcastReceiver
和 Service
的组合?这三者中的任何一个我都没有工作过。
感谢任何帮助。 :)
最佳答案
这些是您制作食谱所需的原料:
以您的 BroadcastReceiver
为目标的 Intent
:
Intent intent = new Intent(context, YourBroadCastReceiver.class);
一个 PendingIntent
,由 AlarmManager
触发并激发您已经定义的 Intent
:
PendingIntent pIntent = PendingIntent.getBroadcast(context, requestCode, intent, flags);
定期激活您的PendingIntent
的AlarmManager
:
AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
am.setRepeating(AlarmManager.RTC_WAKEUP, triggerAtMillis, intervalMillis, pIntent);
处理事件的BroadCastReceiver
:
@Override
protected void handleReceive(Context context, Intent intent) {
// handle GPS
}
关于android - 每天在 Android 中的预定义时间安排 GPS 位置检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20117476/