Как правильно использовать addProximityAlert в google maps?
Здраствуйте! Расскажите как правильно использовать addProximityAlert в google maps ??? Ато третий день бьюсь и не понимаю, то работает, то нет....И главное информация вся в интернете 6-8 ми летней давности...
Метод addProximityAlert надо привязывать на метки или на свою геолокацию??
Может есть альтернатива этой функции?
делаю так:
в onCreate ложу:
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
отравляю в BroadcastReceiver функцию:
private void addProximityAlert(final double latitude, final double longitude) {
Intent intent = new Intent("com.qwe.qwe");
PendingIntent proximityIntent = PendingIntent.getBroadcast(MyService.this, 0, intent, 0);
if (ActivityCompat.checkSelfPermission(MyService.this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(MyService.this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
return;
}
lm.addProximityAlert(latitude, longitude, 50, -1, proximityIntent);
IntentFilter filter = new IntentFilter("com.qwe.qwe");
this.registerReceiver(new ProximityIntentReceiver(), filter);
}
а в BroadcastReceiver ее принимаю:
public class ProximityIntentReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String key = LocationManager.KEY_PROXIMITY_ENTERING;
Boolean entering = intent.getBooleanExtra(key, false);
if (entering) {
Log.d("gauntface", "entering");
Toast.makeText(context,"entering", Toast.LENGTH_SHORT).show();
}
else {
Log.d("gauntface", "exiting");
Toast.makeText(context,"exiting",Toast.LENGTH_SHORT).show();
}
}
}
в манифест добавил пермишшаны:
ACCESS_FINE_LOCATION и ACCESS_COARSE_LOCATION
кароче работает 50 на 50! в чем я неправ?