Google Location API: запрашивать обновления местоположения с ожидающим намерением?
Я начал реализовывать Google Location API, используя это руководство.
Мне удалось заставить его работать в моем приложении довольно хорошо, оно обновляет мое местоположение с нужными интервалами и т. Д. Теперь я работаю над тем, как обновить мое местоположение, когда устройство находится в спящем режиме. Согласно документации, этот метод является следующим способом:
public void requestLocationUpdates (LocationRequest request, PendingIntent callbackIntent);
У меня вопрос, как мне настроить PendingIntent и как мне с ним справиться? Я видел учебники о том, как обращаться с другими типами намерений, но я не уверен, как применить их к этому.
1 ответ
Решение
Вы можете зарегистрировать Broardcast Reciever или Activity через ожидающее намерение. Пример примера для регистрации Boardcast Reciever:
String proximitys = "ACTION";
IntentFilter filter = new IntentFilter(proximitys);
registerReceiver(mybroadcast, filter);
Intent intent = new Intent(proximitys);
PendingIntent proximityIntent = PendingIntent.getBroadcast(this, 0,
intent, PendingIntent.FLAG_CANCEL_CURRENT);
locationManager.requestLocationUpdates(provider, mintime, mindistance,
proximityIntent);
Ваш Broardcast Reciever:
public class ProximityIntentReceiver extends BroadcastReceiver {
@SuppressWarnings("deprecation")
@Override
public void onReceive(Context arg0, Intent intent) {
//action to be performed
}