diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index a4494708b..0cd28d4a5 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -101,9 +101,12 @@ + + + diff --git a/app/src/main/java/org/linphone/ui/main/MainActivity.kt b/app/src/main/java/org/linphone/ui/main/MainActivity.kt index 25bc107e6..98a743676 100644 --- a/app/src/main/java/org/linphone/ui/main/MainActivity.kt +++ b/app/src/main/java/org/linphone/ui/main/MainActivity.kt @@ -652,16 +652,14 @@ class MainActivity : GenericActivity() { } Log.i("$TAG Found URI [$uri] as data for intent [${intent.action}]") - val sipUriToCall = if (uri.startsWith("tel:")) { - uri.substring("tel:".length) - } else if (uri.startsWith("sip-linphone:")) { - uri.replace("sip-linphone:", "sip:") - } else { - if (uri.startsWith("sips-linphone:")) { - uri.replace("sips-linphone:", "sips:") - } else { - uri - }.replace("%40", "@") // Unescape @ character if needed + val sipUriToCall = when { + uri.startsWith("tel:") -> uri.substring("tel:".length) + uri.startsWith("callto:") -> uri.substring("callto:".length) + uri.startsWith("sip-linphone:") -> uri.replace("sip-linphone:", "sip:") + uri.startsWith("linphone-sip:") -> uri.replace("linphone-sip:", "sip:") + uri.startsWith("sips-linphone:") -> uri.replace("sips-linphone:", "sips:") + uri.startsWith("linphone-sips:") -> uri.replace("linphone-sips:", "sips:") + else -> uri.replace("%40", "@") // Unescape @ character if needed } coreContext.postOnCoreThread {