Android Location Aware App - Définissez plusieurs points d'intérêt sans utiliser plusieurs auditeurs
-
31-10-2019 - |
Question
Je fais une application qui devrait afficher des alertes chaque fois que l'utilisateur / l'appareil s'approche de l'un des points d'intérêt prédéfinis.
La seule façon dont j'ai trouvé pour ce faire (en fait je l'ai fait fonctionner comme ça) est de créer une intention en attente (avec un nom unique) pour chaque point d'intérêt. Mais je pense que ce n'est pas la meilleure façon de le faire en termes de ressources.
Est-il possible d'atteindre de telles fonctionnalités en utilisant une seule intention en attente au lieu de plusieurs séparées?
Y a-t-il une autre meilleure façon de faire cela?
Merci d'avance
Mike
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);
}
}
Pas de solution correcte
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow