我想将一个包含“#”的数字传递给Android系统的拨号盘。像我使用的以下代码一样:
Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:#123456#"));
mContext.startActivity(intent);
但实际上,拨号盘中显示的数字是“123456”,“#”已消失。 我找不到导致这个问题的原因,任何人都可以帮助我吗?
答案 0 :(得分:4)
尝试:
Intent intent = new Intent(Intent.ACTION_DIAL,Uri.parse("tel:" + Uri.encode("#123456#"));
mContext.startActivity(intent);
Intent intent = new Intent(Intent.ACTION_DIAL,Uri.parse("tel:" + Uri.encode("#123456#"));
mContext.startActivity(intent);
答案 1 :(得分:2)
试一试
Intent intent = new Intent(Intent.ACTION_DIAL);
intent.setData(Uri.fromParts("tel", "#123456#", "#"));
startActivity(intent);
答案 2 :(得分:0)
如果你想拨打一个号码(例如:#123),你可以试试这个:
Intent callIntent = new Intent(Intent.ACTION_DIAL);
callIntent.setData(Uri.parse("tel:" + Uri.encode("#123")));
startActivity(callIntent);
如果您想对#123这样的号码进行CALL,您只需修改意图:
Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:" + Uri.encode("#123")));
startActivity(callIntent);