使用 Kotlin Android Studio 拨打电话
Posted
技术标签:
【中文标题】使用 Kotlin Android Studio 拨打电话【英文标题】:Making a phone call with Kotlin Android Studio 【发布时间】:2019-08-10 08:59:36 【问题描述】:我正在尝试使用 Kotlin 在 android Studio 中拨打电话;目的是拨打墨西哥的紧急电话“911”。当我按下通话按钮时,应用程序只显示电话号码(手机本机应用程序中的“911”)而不是自动呼叫。一开始我以为是因为“Intent”,然后我用“+”或“(52)44..”更改了数字,它成功了!我不知道可能是什么问题。
权限:
<uses-permission android:name="android.permission.CALL_PHONE"/>
代码:
imageLlamada.setOnClickListener(
makePhoneCall("911")
)
fun makePhoneCall(number: String) : Boolean
try
val intent = Intent(Intent.ACTION_CALL)
intent.setData(Uri.parse("tel:$number"))
startActivity(intent)
return true
catch (e: Exception)
e.printStackTrace()
return false
【问题讨论】:
【参考方案1】:您需要CALL_PRIVILEGED
权限才能拨打紧急电话。
http://developer.android.com/reference/android/Manifest.permission.html#CALL_PRIVILEGED
允许应用拨打任何电话号码,包括紧急电话号码 号码,无需通过用户的拨号器用户界面 确认正在拨打的电话。
【讨论】:
这是我尝试使用 CALL_PRIVILEGED 时得到的结果:具有保护级别签名、特权或签名或系统的权限仅授予系统应用程序。如果一个应用是普通的非系统应用,它将永远无法使用这些权限。 ***.com/questions/13801984/… 你知道我是否必须将 CALL_PRIVILEGED 添加为“使用权限”标签吗?因为我已经做到了,而我的呼叫按钮没有做任何事情。另外,我检查了“权限仅授予系统应用程序”,我这样做了,但它不起作用。以上是关于使用 Kotlin Android Studio 拨打电话的主要内容,如果未能解决你的问题,请参考以下文章
Android@Kotlin 在Android studio 中配置Kotlin
Android@Kotlin 在Android studio 中配置Kotlin