mirror of
https://github.com/SimpleMobileTools/Simple-Contacts.git
synced 2025-02-17 03:51:03 +01:00
handle the SIM picking before calling only if this is the default dialer app
This commit is contained in:
parent
5ab75aed4b
commit
96ce1eabcd
@ -21,17 +21,29 @@ import com.simplemobiletools.contacts.pro.helpers.*
|
|||||||
import com.simplemobiletools.contacts.pro.models.Contact
|
import com.simplemobiletools.contacts.pro.models.Contact
|
||||||
|
|
||||||
fun SimpleActivity.startCallIntent(recipient: String) {
|
fun SimpleActivity.startCallIntent(recipient: String) {
|
||||||
|
if (isDefaultDialer()) {
|
||||||
|
getHandleToUse(null, recipient) { handle ->
|
||||||
|
launchCallIntent(recipient, handle)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
launchCallIntent(recipient, null)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fun SimpleActivity.launchCallIntent(recipient: String, handle: PhoneAccountHandle?) {
|
||||||
handlePermission(PERMISSION_CALL_PHONE) {
|
handlePermission(PERMISSION_CALL_PHONE) {
|
||||||
val action = if (it) Intent.ACTION_CALL else Intent.ACTION_DIAL
|
val action = if (it) Intent.ACTION_CALL else Intent.ACTION_DIAL
|
||||||
getHandleToUse(null, recipient) { handle ->
|
Intent(action).apply {
|
||||||
Intent(action).apply {
|
data = Uri.fromParts("tel", recipient, null)
|
||||||
data = Uri.fromParts("tel", recipient, null)
|
|
||||||
|
if (handle != null) {
|
||||||
putExtra(TelecomManager.EXTRA_PHONE_ACCOUNT_HANDLE, handle)
|
putExtra(TelecomManager.EXTRA_PHONE_ACCOUNT_HANDLE, handle)
|
||||||
if (resolveActivity(packageManager) != null) {
|
}
|
||||||
startActivity(this)
|
|
||||||
} else {
|
if (resolveActivity(packageManager) != null) {
|
||||||
toast(R.string.no_app_found)
|
startActivity(this)
|
||||||
}
|
} else {
|
||||||
|
toast(R.string.no_app_found)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user