properly recognize SIM card to use from third party intents

This commit is contained in:
tibbi
2020-05-02 20:07:14 +02:00
parent 964486fedc
commit 91c33b5030

View File

@ -64,13 +64,15 @@ class DialerActivity : SimpleActivity() {
@SuppressLint("MissingPermission")
private fun getHandleToUse(callback: (PhoneAccountHandle) -> Unit) {
val defaultHandle = telecomManager.getDefaultOutgoingPhoneAccount(PhoneAccount.SCHEME_TEL)
if (defaultHandle != null) {
callback(defaultHandle)
} else {
handlePermission(PERMISSION_READ_PHONE_STATE) {
if (it) {
SelectSIMDialog(this) { handle ->
callback(handle)
when {
defaultHandle != null -> callback(defaultHandle)
intent.hasExtra(TelecomManager.EXTRA_PHONE_ACCOUNT_HANDLE) -> callback(intent.getParcelableExtra(TelecomManager.EXTRA_PHONE_ACCOUNT_HANDLE))
else -> {
handlePermission(PERMISSION_READ_PHONE_STATE) {
if (it) {
SelectSIMDialog(this) { handle ->
callback(handle)
}
}
}
}