Intereting Posts
Android: строка Json с пробелами дает исключение «Unterminited object at» Изменить размер Drawable в Android Java.lang.RuntimeException: eglSwapBuffers не удалось: отчет EGL_SUCCESS Подпапки в папке с выделенными ресурсами? Android. Как сделать запись аудио с высоким объемом? Как сделать мое приложение владельцем устройства? Android – Каков правильный способ сохранения / восстановления адаптера ListView? Может ли платное приложение тестироваться в альфа-бетах бесплатно? Android: сменить кнопку Button в строке ListView с помощью onClick Горизонтальный прокручиваемый текст в Android Создание горизонтальной пунктирной линии в макете android Мультиплексированная точка доступа в Android Ошибка получения родительского элемента: не найден ресурс, который соответствует указанному имени '@android: style / TextAppearance.Holo.Widget.ActionBar.Title' Сделать ссылку в браузере Android запустите мое приложение? Библиотека разработки Android 25.1.0 TextInputLayout Hint не отображается должным образом по сравнению с 24.2.1

Кордова ibeacon; Отправить локальное уведомление после того, как приложение было убито, но не работает на android

Я использую плагин Cordova / Phonegap iBeacon с ионным рисунком в моем проекте cordova. Я пытаюсь отправить локальное уведомление как на Android, так и на ios с плагином локального уведомления cordova во время входа в контролируемый регион, когда приложение будет убито.

Вот мой код:

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(); } 

Плагины 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" 

Версия cordova: 4.3.0

Это отлично работает для ios, даже если приложение убито, но в уведомлениях о android указывается только в случае приложения в фоновом режиме. Когда я убиваю приложение из диспетчера задач в android, я никогда не видел никаких локальных уведомлений.

Можно ли получать уведомление об андроиде, даже если приложение убито?

Спасибо за помощь.

Solutions Collecting From Web of "Кордова ibeacon; Отправить локальное уведомление после того, как приложение было убито, но не работает на android"

Позволяет очистить некоторые вещи, есть состояния, которые лет запутывают:

  1. Приложение как услуга
  2. Приложение работает в фоновом режиме (т.е. сведено к минимуму).
  3. Приложение убито (не работает вообще)

Во всех случаях 3-го состояния, когда вы убиваете приложение (через длинную кнопку возврата в пользовательских ромах или принудительное прекращение работы с меню приложения в вашей ОС), приложение просто удаляется из памяти, код не вызывается!

Что обычно делается в этом случае, автоматически перезапускается служба после того, как она была остановлена, проверьте этот ответ и, как вы можете прочитать:

Это действительно очень плохой шаблон, который позволяет выполнять сервис в соответствии с желанием пользователя.

Есть так много плагинов cordova, чтобы создать BroadcasteReceiver , однако простой ответ на ваш вопрос, если приложение убито, невозможно получить уведомление.

Но вы должны это учитывать: если пользователь убивает ваше приложение, это означает, что это было сделано намеренно, поэтому вам не следует беспокоиться о том, будет ли ваше приложение работать или нет, поскольку это проблема пользователя, а не ваша как разработчик.