Quero avisar no meu aplicativo quando um usuário está chegando perto de um determinado lugar.
Então eu coloquei um lugar para avisar
// 100 meter radius float radius = 100f; // Expiration is 10 Minutes (10mins * 60secs * 1000milliSecs) long expiration = 600000; Intent intent = new Intent(PROXIMITY_INTENT_ACTION); PendingIntent pendingIntent = PendingIntent.getBroadcast(getApplicationContext(), requestCode, intent, PendingIntent.FLAG_CANCEL_CURRENT); locationManager.addProximityAlert(lat, lon, radius, expiration, pendingIntent);
Sempre que o dispositivo se move, o método é chamado atualizando o local.public static final String PROXIMITY_INTENT_ACTION = "com.mycompanie.receivers.ProximityAlert"; @Override public void onLocationChanged(Location location) { Log.d(TAG, "Location Device: " + location.getLatitude() + "," + location.getLongitude()); Intent intent = new Intent(PROXIMITY_INTENT_ACTION); sendBroadcast(intent); }
e o método onReceiver é chamado, no entanto a variável getting_closer sempre vem false, mesmo colocando o mesmo local usando o emulador ou algum falsoGPSpublic class ProximityAlert extends BroadcastReceiver { public static final String EVENT_ID_INTENT_EXTRA = LocationManager.KEY_PROXIMITY_ENTERING; @Override public void onReceive(Context context, Intent intent) { Boolean getting_closer = intent.getBooleanExtra(EVENT_ID_INTENT_EXTRA, false); if (getting_closer) Log.d("Radius", "Hey, I just entered your radius!"); else Log.d("Radius", "I just exited your radius!"); } }
Alguém por favor pode me ajudar???You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
0 comentários:
Postar um comentário