我在android.i中创建电话拨号器有一个TextView onclick我从它获得了价值。我正在尝试将此号码放在拨号器上。但是,当我试图调用Intent.Action_Dialer时,它显示了一些额外的值
INPUT - 1234567890 //来自textView OUTPUT - 6624531234567890 //在拨号器上显示 This is code which i am using
tvpMobile.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String phone = tvpMobile.getText().toString().trim();// value of phone is- 1234567890
Intent e = new Intent(Intent.ACTION_DIAL);
e.setData(Uri.parse("tel:" + phone));
e.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
//e.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(e);
}
}
答案 0 :(得分:0)
使用此功能可能会对您有所帮助。
btn_call.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
Intent callintent = new Intent(Intent.ACTION_CALL);
callintent.setData(Uri.parse("tel:" + ed_call.getText().toString()));
if (ActivityCompat.checkSelfPermission(MainActivity.this, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
// TODO: Consider calling
return;
}
startActivity(callintent);
} catch (Exception e) {
e.printStackTrace();
}
}
});
和设计代码
<EditText
android:id="@+id/ed_call"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Button
android:id="@+id/btn_call"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Call" />
答案 1 :(得分:0)
Intent callIntent = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:" + phone));
startActivity(callIntent):
我认为您不需要此权限,因为用户手动确认呼叫操作。
答案 2 :(得分:0)
试试这个
Intent intent = new Intent(Intent.ACTION_CALL);
intent.setData(Uri.parse("tel:" + numberString + ""));
startActivity(intent);