1

我想将一个包含“#”的数字传递给 Android 系统的拨号盘。就像我使用的以下代码一样:

Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:#123456#"));
mContext.startActivity(intent);

但实际上,拨号盘上显示的数字是“123456”,“#”消失了。我找不到导致此问题的原因,有人可以帮助我吗?

4

3 回答 3

5

尝试如下:

Intent intent = new Intent(Intent.ACTION_DIAL,Uri.parse("tel:" + Uri.encode("#123456#"));

mContext.startActivity(intent);

于 2012-08-16T06:13:42.273 回答
2

试试这个

Intent intent = new Intent(Intent.ACTION_DIAL);
intent.setData(Uri.fromParts("tel", "#123456#", "#")); 
startActivity(intent); 
于 2012-08-16T06:10:15.140 回答
0

如果你想拨打一个号码(例如:#123),你可以试试这个:

Intent callIntent = new Intent(Intent.ACTION_DIAL);
callIntent.setData(Uri.parse("tel:" + Uri.encode("#123")));
startActivity(callIntent);

如果你想拨打一个像#123这样的号码,你只需修改Intent:

Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:" + Uri.encode("#123")));
startActivity(callIntent);
于 2013-05-28T14:17:23.283 回答