Событие DidexitRegion никогда не вызывается с приложением в фоновом режиме - PullRequest
0 голосов
/ 26 сентября 2018

Я использую библиотеку altbeacon.В классе mainapplication я расширяю Bootstrapnotifier, и когда вызывается didEnterRegion, я вызываю огонь намерения и запускаю службу переднего плана для класса, который расширяет BeaconConsumer и ищет события входа и выхода.Проблема заключается в том, что основное приложение обнаруживает события didEnterRegion, когда приложение находится в фоновом режиме, но didExitRegion никогда не вызывается даже после ожидания в течение 15 минут.

1 Ответ

0 голосов
/ 26 сентября 2018

Я думаю, что выполнение мониторинга маяков региона как в пользовательском классе приложения Android, так и в службе переднего плана, вероятно, вызовет сложные проблемы жизненного цикла, поэтому, если это возможно, я бы упростил решение, оставив всю логику мониторинга в пользовательском классе приложения.Вы по-прежнему можете запускать службу переднего плана - до тех пор, пока служба переднего плана работает, тот же пользовательский класс приложения также останется в живых.

Если вы хотите получить мониторинг, работающий в классе обслуживания в дополнение ккласс приложения, я бы посоветовал протестировать, что вы получаете любые маяковые события, включая события входа, которые намного проще тестировать.Просто запустите ваше приложение вручную без включенных маяков, затем включите маяк и посмотрите, получает ли ваша служба переднего плана обратный вызов didEnterRegion.Вы можете обнаружить, что это не так, что означает, что вам нужно устранить эту настройку.Убедитесь, что ваш monitorNotifier добавлен правильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...