繁体   English   中英

Intent.ACTION_CALL在Android中忽略了“#”

[英]Intent.ACTION_CALL is ignoring '#' in android

我正在尝试使用以下格式从我的应用程序中调用。

AcessNumber,CalleeNumber#

尾随#减少dtmf触发持续时间。 但这不起作用(拨打电话有效,但减少延迟无效)。 如果我使用相同format本地phone app拨打phone app ,则每次都可以使用。 我三遍检查了我的代码,肯定添加了#

final Intent callIntent = new Intent(Intent.ACTION_CALL);
StringBuilder buffer = new StringBuilder();
buffer.append("tel:");
buffer.append(accessNumber);
buffer.append(",");
buffer.append(number);
buffer.append("#");
callIntent.setData(Uri.parse(buffer.toString());
startActivity(callIntent);
Log.e("caller number", callIntent.getData().toString());

编码人员中真正常见的问题。 解决该问题的方法是键入以下代码:String encodehash = Uri.encode(“#”);

而不是buffer.append(“#”); 使用buffer.append(encodedHash);

来自伊朗的欢呼

加布里埃尔

在我看来问题出在这条线上

callIntent.setData(Uri.parse(buffer.toString());

如果您解析缓冲区,则它将删除#字符,尝试像这样

callIntent.setData((Uri.parse(buffer.toString())+"#");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM