Pregunta

Estoy haciendo una aplicación que debería mostrar alertas cada vez que el usuario/dispositivo se acerca a uno de los puntos de interés predefinidos.

La única forma en que encontré para hacer eso (de hecho, lo hice funcionar así) es crear una intención pendiente (con un nombre único) para cada punto de interés. Pero creo que esa no es la mejor manera de hacerlo en términos de recursos.

¿Es posible lograr dicha funcionalidad usando solo una intención pendiente en lugar de múltiples separados?

¿Hay alguna otra mejor manera de hacerlo?

Gracias por adelantado

Miguel


private void addProximityAlert(double latitude, double longitude, String poiName) {

        Bundle extras = new Bundle();   
        extras.putString("name", poiName);
                Intent intent = new Intent(PROX_ALERT_INTENT+poiName);
               intent.putExtras(extras);
        PendingIntent proximityIntent = PendingIntent.getBroadcast(MainMenu.this, 0, intent, 0);
        locationManager.addProximityAlert(
            latitude, // the latitude of the central point of the alert region
            longitude, // the longitude of the central point of the alert region
            POINT_RADIUS, // the radius of the central point of the alert region, in meters
            PROX_ALERT_EXPIRATION, // time for this proximity alert, in milliseconds, or -1 to indicate no expiration 
            proximityIntent // will be used to generate an Intent to fire when entry to or exit from the alert region is detected
       );

       IntentFilter filter = new IntentFilter(poiName);
       registerReceiver(new ProximityIntentReceiver(), filter);

    }
}

No hay solución correcta

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top