Android原生应用中点击手机号唤起LINE并发起通话的实现方法
Android唤起LINE拨打手机号解决方案
LINE官方支持通过自定义URI协议实现直接拨打指定手机号,具体实现步骤如下:
核心URI协议
使用line://call/<phone_number>格式的URI,其中<phone_number>需为纯数字格式(可包含国家码前缀,如+86,但需去除空格、-等特殊字符)。Android代码实现
构建Intent并唤起LINE应用,同时处理LINE未安装的场景:// 目标手机号,需清理特殊字符 val targetPhone = "+8613800138000".replace("[^0-9+]".toRegex(), "") val lineCallUri = Uri.parse("line://call/$targetPhone") val intent = Intent(Intent.ACTION_VIEW, lineCallUri) // 指定包名直接唤起LINE,避免系统弹出应用选择器 intent.setPackage("jp.naver.line.android") // 检查是否安装LINE if (packageManager.resolveActivity(intent, 0) != null) { startActivity(intent) } else { // 跳转应用商店安装LINE val installIntent = Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=jp.naver.line.android")) startActivity(installIntent) }注意事项
- 目标手机号必须是已注册LINE的账号,否则LINE会提示无法发起呼叫
- 若不需要强制唤起LINE,可移除
setPackage方法,让系统弹出应用选择器(若有其他支持该URI的应用) - 测试时需确保设备已安装LINE客户端,主流版本均支持该URI协议
内容的提问来源于stack exchange,提问作者Prasath
相关产品推荐
相关产品推荐

