Я пытаюсь настроить оповещения о приближении ниже мой код, но его не стрелять по всемуAndroid Proximity предупреждения не стреляя
Intent intent = new Intent(ACTION_PROXIMITY_ALERT);
pendingIntent = PendingIntent.getBroadcast(GMapsActivity.this, 0, intent, 0);
locationManager.addProximityAlert(mNavigationDatas.get(CURRENT_INDEX).startCordinates.latitude,
mNavigationDatas.get(CURRENT_INDEX).startCordinates.longitude, 100f, -1, pendingIntent);
IntentFilter filter = new IntentFilter(ACTION_PROXIMITY_ALERT);
registerReceiver(new ProximityBroadcastListener(), filter);
Права доступа к следующему
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
Я посылаю Mock местоположение для тестирования на реальном устройстве Android v4.1.2 макет местоположения следует за правильным путем, но прослушиватель вещания не называется
public class ProximityBroadcastListener extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
final String key = LocationManager.KEY_PROXIMITY_ENTERING;
final Boolean entering = intent.getBooleanExtra(key, false);
if (entering) {
String instruction = mNavigationDatas.get(CURRENT_INDEX).drivingInstuctions;
instruction = instruction.replaceAll("<[^>]*>", "");
Log.e("", instruction);
tts.speak(instruction, TextToSpeech.QUEUE_FLUSH, null);
Toast.makeText(context, "entering", Toast.LENGTH_SHORT).show();
} else {
locationManager.removeProximityAlert(pendingIntent);
CURRENT_INDEX++;
locationManager.addProximityAlert(mNavigationDatas.get(CURRENT_INDEX).startCordinates.latitude,
mNavigationDatas.get(CURRENT_INDEX).startCordinates.longitude, 100f, -1, pendingIntent);
Toast.makeText(context, "exiting", Toast.LENGTH_SHORT).show();
}
}
Спасибо Saurabh
Можете ли вы прикрепить бревна, когда вы отправляете фальшивое местоположение? – iago
Я использую те же координаты, что и для определения местоположения, которое я использовал для отображения маршрута, и указатель myLocation перемещается по тому же пути, и я отправляю ложное местоположение через другое приложение. – ingsaurabh
. Когда вы отправляете ложное местоположение через другое приложение, зарегистрированный слушатель или он становится незарегистрированным, когда это приложение идет в фоновом режиме? – iago