我正在使用用户扫描卡号(14位)号码通过相机进行应用,然后拨打电话。呼叫需要在号码末尾加上通配符“#”,但我的应用不会添加该字符。我该怎么办?
我正在使用此
String cardNumber = textValue.getText().toString().trim();
int permissionCheck = ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.CALL_PHONE);
if (permissionCheck != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(MainActivity.this,new String[]{Manifest.permission.CALL_PHONE}, Integer.parseInt("123"));
}
else {
startActivity(new Intent(Intent.ACTION_DIAL).setData(Uri.parse("tel:*123*"+cardNumber+"#")));
}
答案 0 :(得分:1)
您可以将此代码用于您的问题:
Intent callIntent = new Intent(Intent.ACTION_DIAL);
callIntent.setData(Uri.parse("tel:"+ Uri.encode("*123#")));
startActivity(callIntent);
或
在运行时添加值
Intent callIntent = new Intent(Intent.ACTION_DIAL);
String cardnm = "8585"; // cardname value......
callIntent.setData(Uri.parse("tel:" + Uri.encode("*123*" + cardnm + "#")));
startActivity(callIntent);