Android 当我使用呼叫意图时,自动从号码中删除#

Android 当我使用呼叫意图时,自动从号码中删除#,android,android-intent,Android,Android Intent,在上面的代码中,当我使用带有“#”的数字时,“#”将自动从数字中删除。我怎样才能修好它 请帮帮我。谢谢。请尝试以下方法: String num= "*345*20#"; Intent callintent = new Intent(Intent.ACTION_DIAL); callintent.setData(Uri.parse("tel:"+num)); startActivity(callintent); 当您有一个带有特殊字符(如#)的URI时,它是一个保留字符。为了在URI中

在上面的代码中,当我使用带有“#”的数字时,“#”将自动从数字中删除。我怎样才能修好它

请帮帮我。谢谢。

请尝试以下方法:

String num= "*345*20#";
Intent callintent = new Intent(Intent.ACTION_DIAL);  
callintent.setData(Uri.parse("tel:"+num));   
startActivity(callintent);

当您有一个带有特殊字符(如
#
)的URI时,它是一个保留字符。为了在URI中使用这些字符,必须对URI内容进行如下编码:

String num= "*345*20#";
Intent callintent = new Intent(Intent.ACTION_DIAL);  
callintent.setData(Uri.parse("tel:"+ Uri.encode(num)));   
startActivity(callintent);
encode()
方法将对URI进行百分比编码。 有关更多信息,请参见此处:

String num= "*345*20#";
Intent callintent = new Intent(Intent.ACTION_DIAL);  
callintent.setData(Uri.parse("tel:"+Uri.encode(num)));   
startActivity(callintent);