我想每 15 秒获取一次位置,一切正常,但是在打瞌睡模式(深度睡眠)下,我的处理程序无法正常工作,是吗?AlarmManager 是个好方法,但时间限制为 1 分钟,在打盹模式下不重复。
@ReactMethod
public static void setAlarm()
{
int interval = 50; // delay in secs
AlarmManager am = (AlarmManager) reactContext.getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(reactContext, AlarmManagerReceiver.class);
PendingIntent pi = PendingIntent.getBroadcast(reactContext, 0, intent, 0);
am.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), interval*1000 , pi);
}
接收者 :
public class AlarmManagerReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
DoRoutine();
}
}