我试图制作一个能拨打固定号码的Android项目。当我使用像01712364445这样的正常数字时,它正在工作。但是,当我使用这个号码* 566#时,拨打* 567就是#缺失了。如何解决这个问题?我的代码在这里......
gp = (Button) findViewById(R.id.buttongp);
gp.setOnClickListener(listener);
}
OnClickListener listener = new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent dialerIntent = new Intent();
dialerIntent.setAction(Intent.ACTION_CALL);
dialerIntent.setData(Uri.parse("tel:*566# "));
startActivity(dialerIntent);
}
};
答案 0 :(得分:0)
Intent callIntent = new Intent(Intent.ACTION_CALL);
string pnd=uri.encode("#"); callIntent.setData(Uri.parse("tel:566 "+pnd)); startActivity(callIntent);
试试这个 并在主函数
之前使构造函数全局化编辑: 此代码有效
Button b; Intent callIntent = new Intent(Intent.ACTION_CALL); String pnd; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main);
b=(Button)findViewById(R.id.b1);
OnClickListener ls=new OnClickListener(){
@Override
public void onClick(View p1)
{
{
pnd=Uri.encode("#");
callIntent.setData(Uri.parse("tel:*566 "+pnd));
startActivity(callIntent);
}
// TODO: Implement this method
}
};
b.setOnClickListener(ls);
}
}
和uri.encode(“#”);把英镑标志放在那里检索ussd代码。遵循程序并连接uri.encode(“#”);
经过测试和工作
使用AIDE for Android进行测试。这就是我从智能手机创建应用程序的方式。