Я пытаюсь использовать фоновый запуск Android Beacon Library.
Я использую regionBootstrap
класс, чтобы сообщить о близости моих маяков.
В классе приложений Android я вызываю метод enableForegroundServiceScanning
, прежде чем создавать новый regionBootstrap
, поэтому в Android 8+ я могу получать уведомления и о том, что моя деятельность также прекращена.
Я бы хотел остановить службу библиотеки переднего плана, если пользователь больше не хочет эту службу, но я не понимаю, как это сделать. Кто-нибудь мне поможет?
это мой пример кода:
public class GlobalState extends Application implements BootstrapNotifier
{
@Override
public void onCreate()
{
super.onCreate();
beaconManager = BeaconManager.getInstanceForApplication(this);
beaconManager.setDebug(true);
List<Region> rl = getPrefList();
if (rl.size() > 0)
{
try
{
beaconManager.enableForegroundServiceScanning (m_builder.build(), 3);
}
catch (Exception e)
{
Log.d(TAG, "Foreground service starting error: " + e);
}
regionBootstrap = new RegionBootstrap(this, rl);
Log.d(TAG, "Region scan set!");
}
else
{
beaconManager.disableForegroundServiceScanning();
regionBootstrap = new RegionBootstrap(this, rl);
regionBootstrap.disable();
Log.d(TAG, "Region scan disable...");
}
}
...