Вызов функции разрешения CALL_PHONE из другого класса в MainActivity в КотлинеAndroid

Форум для тех, кто программирует под Android
Anonymous
Вызов функции разрешения CALL_PHONE из другого класса в MainActivity в Котлине

Сообщение Anonymous »

Я пытаюсь вызвать функцию, которая запрашивает разрешения CALL_PHONE у другого класса. Хотя вызов этой функции из MainActivity работает хорошо, я не могу понять, как сделать то же самое из другого класса. Я пытался провести некоторое тестирование и знаю, как показать Toast из другого класса, используя контекст, но он не работает с RegisterForActivityResult. Приложение аварийно завершает работу при методе щелчка pbtn, отображающем информацию в logcat:

Код: Выделить всё

int android.content.Context.checkPermission(java.lang.String, int, int)' on a null object reference
Вот мой код:
Test_class.kt

Код: Выделить всё

class Test_class() :AppCompatActivity() {
fun checkpermissions(context: Context) {
val  permissionLauncher = registerForActivityResult(
ActivityResultContracts.RequestPermission()

){ isGranted ->
if (isGranted) {
Toast.makeText(context,"Permission accepted", Toast.LENGTH_SHORT).show()
}
else {
Toast.makeText(context,"Permission denied", Toast.LENGTH_SHORT).show()

}
}

val perm = Manifest.permission.CALL_PHONE
permissionLauncher.launch(perm)
MainActivity.kt:

Код: Выделить всё

(..)
pbtn.setOnClickListener {
val ex = Test_class()
ex.checkpermissions(applicationContext)
}
(..)
Кто-нибудь1 знает, как правильно вызывать разрешения из другого класса, и может немного объяснить простым способом?
Заранее спасибо
п>

Подробнее здесь: https://stackoverflow.com/questions/790 ... ity-in-kot

Вернуться в «Android»