2021-11-26 18:05:00
Удобный Permissions Manager#library
Почти все сегодняшние приложения под Android запрашивают и обрабатывают Permissions.
На мой взгляд, первая имплементация для запроса разрешений была не самая удачная. Ведь надо было прописывать onActivityResult для получения результата и полная реализация получения была громоздкой. Тогда и стали активно появляться различные обёртки библиотеки, которые заметно упрощают получение разрешений.
Но на днях решил посмотреть, а насколько тяжело сейчас реализовать получение «пермишенов» и что изменилось. И к счастью, нашёлся крутой вариант, позволяющий добавить реализацию буквально в несколько строк кода.
Для запроса нам надо зарегистрировать requestPermissionLauncher и вызвать: requestPermissionLauncher.launch(Manifest.permission.REQUESTED_PERMISSION) с нужным разрешением. В итоге получаем:
val requestPermissionLauncher =
registerForActivityResult(RequestPermission()
) { isGranted: Boolean ->
if (isGranted) {
// Permission is granted.
} else {
// Permission is denied.
}
}
Я тут добавил немного «магии» Kotlin, причесав всё делегатами и получилось ещё удобнее, можете ознакомиться тут.
Так что теперь смело можно выкинуть ещё одну либу из проекта.
214 views15:05