plugin ibeacons eddystone beacons beacon javascript android cordova ionic-framework ibeacon

javascript - ibeacons - ionic native estimote



Cordova ibeacon; Enviar notificación local después de que la aplicación se matara, pero no funciona en Android (1)

aclaremos algunas cosas, hay estados que me confunden:

  1. Aplicación como servicio
  2. Aplicación ejecutándose en segundo plano (es decir, minimizada).
  3. Aplicación eliminada (no se ejecuta en absoluto)

en todos los casos, el tercer estado cuando se cierra la aplicación (al presionar el botón de retroceso en roms personalizadas o forzar la detención desde el menú de la aplicación en su sistema operativo), la aplicación simplemente se elimina de la memoria, ¡no se está ejecutando ningún código!

lo que generalmente se hace en este caso es relanzar automáticamente el servicio después de que se ha detenido, verifique esta respuesta , y como puede leer:

es realmente un patrón muy malo para ejecutar el servicio con fuerza contra la voluntad del usuario.

hay tantos complementos cordova para crear BroadcasteReceiver , sin embargo, la respuesta simple a su pregunta, si la aplicación se cancela no es posible recibir notificaciones.

Pero debes considerar esto: si el usuario mata tu aplicación, significa que se hizo intencionalmente, por lo que no deberías preocuparte realmente si tu aplicación funcionara o no, ya que este es el problema del usuario y no el tuyo como desarrollador.

Estoy usando el plugin iBeacon de Cordova / Phonegap con marco iónico en mi proyecto de cordova. Estoy tratando de enviar una notificación local tanto en android como en ios con el complemento de notificación local cordova al ingresar a la región monitoreada, cuando se mata la aplicación.

Aquí está mi código:

document.addEventListener("deviceready", onDeviceReady, false); function didDetermineStateForRegion(pluginResult) { } function didStartMonitoringForRegion (pluginResult) { } function didExitRegion(pluginResult) { $cordovaLocalNotification.add({ id: 30244234234, title: "Good By!", text: "Hope to see you again." }).then(function () { }); } function didEnterRegion (pluginResult) { $cordovaLocalNotification.add({ title: "Welcome", text: "Tap to launch app" }).then(function () { }); }; function didRangeBeaconsInRegion (pluginResult) { } function onDeviceReady() { // Now safe to use device APIs function createBeacon(uuid,nofiyState) { var uuid = uuid; // mandatory var identifier = ''estimote''; // mandatory // throws an error if the parameters are not valid var beaconRegion = new cordova.plugins.locationManager.BeaconRegion(identifier, uuid); beaconRegion.notifyEntryStateOnDisplay = true; return beaconRegion; } var delegate = new cordova.plugins.locationManager.Delegate(); delegate.didDetermineStateForRegion = didDetermineStateForRegion; delegate.didStartMonitoringForRegion = didStartMonitoringForRegion; delegate.didRangeBeaconsInRegion = didRangeBeaconsInRegion; delegate.didEnterRegion = didEnterRegion; delegate.didExitRegion = didExitRegion; var beaconRegion = createBeacon(''02681445-8D1B-4F58-99D4-B25F4B129A58'',true); // var beaconRegionBlue = createBeacon(''02681445-8D1B-4F58-99D4-B25F4B129A58'',1,,true); cordova.plugins.locationManager.setDelegate(delegate); // required in iOS 8+ //cordova.plugins.locationManager.requestWhenInUseAuthorization(); cordova.plugins.locationManager.requestAlwaysAuthorization(); cordova.plugins.locationManager.startMonitoringForRegion(beaconRegion) .fail(console.error) .done(); }

Complementos de cordova:

com.unarin.cordova.beacon 3.3.0 "Proximity Beacon Plugin" de.appplant.cordova.plugin.local-notification 0.8.1 "LocalNotification" nl.x-services.plugins.socialsharing 4.3.16 "SocialSharing" org.apache.cordova.console 0.2.13 "Console" org.apache.cordova.device 0.3.0 "Device"

Versión cordova: 4.3.0

esto funciona bien para iOS incluso si la aplicación se mata, pero en las notificaciones de Android solo funciona si la aplicación está en segundo plano. Cuando elimino la aplicación del administrador de tareas en Android, nunca vi ninguna notificación local.

¿Es posible recibir notificaciones en Android incluso si se mata la aplicación?

gracias por la ayuda.