in health-services/PassiveData/app/src/main/java/com/example/passivedata/StartupReceiver.kt [45:61]
override fun onReceive(context: Context, intent: Intent) {
if (intent.action != Intent.ACTION_BOOT_COMPLETED) return
runBlocking {
if (repository.passiveDataEnabled.first()) {
// Make sure we have permission.
val result = context.checkSelfPermission(android.Manifest.permission.BODY_SENSORS)
if (result == PackageManager.PERMISSION_GRANTED) {
scheduleWorker(context)
} else {
// We may have lost the permission somehow. Mark that background data is
// disabled so the state is consistent the next time the user opens the app UI.
repository.setPassiveDataEnabled(false)
}
}
}
}