Как получить экземпляр в Kotlin с Context.getSystemService (Class) - PullRequest
0 голосов
/ 27 февраля 2019

В документации Google Android Kotlin, Время от времени в документации Android есть нижняя строка, которая: Экземпляры этого класса должны быть получены с использованием Context.getSystemService (Class)

Например:

Экземпляры этого класса должны быть получены с использованием Context.getSystemService (Class) с аргументом AppOpsManager.class или Context.getSystemService (String) с аргументом Context.APP_OPS_SERVICE.

Может кто-нибудь уточнить, что это такое и как мне создать экземпляр для класса AppOpsManager.

Обычно мы можем создать экземпляр, например: val use = AppOpsManager()

Пожалуйста, помогите иобъясните выше Context.getSystemService().

Спасибо.

Ответы [ 2 ]

0 голосов
/ 28 февраля 2019

Из Android Developer документация:

AppOpsManager

API для взаимодействия с отслеживанием "работы приложения".

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

Экземпляры этого класса должны быть получены с использованием Context.getSystemService(Class) с аргументом AppOpsManager.class или Context.getSystemService(String) с аргументом Context.APP_OPS_SERVICE.

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

val appOpsManager: AppOpsManager? = getSystemService(Context.APP_OPS_SERVICE) as AppOpsManager?

Если ваш minSdkVersion равен 23, вы можете использовать этот код вместо этого.

val appOpsManager: AppOpsManager? = getSystemService(AppOpsManager::class.java)
0 голосов
/ 27 февраля 2019

Используйте следующее:

context.getSystemService(AppOpsManager::class.java)
...