-1

我正在创建一个调用应用程序。我正在尝试在 actionView 中使用默认号码,并希望在手机通话按钮中传递手机号码。

这是我的代码:-

public void onClick(View arg0) {
                  // this is real calling number 
        long mobile = "tel:9999999999";
                                           // this is default number.and show in textfield of calling.
                    Uri uri = Uri.parse("tel:+919910699440");
                 Intent intent = new Intent(Intent.ACTION_VIEW, uri);
        // here i want to pass real calling num in Button. so when i press the                         
                    //calling button . button will get mobile num but not show.     

                     intent.setData(Uri.parse("tel:"+mobile));

                 startActivity(intent);


                }

感谢您的时间。

4

3 回答 3

1

你有两个选择:

  • 使用Intent.ACTION_CALL

    Intent intent = new Intent(Intent.ACTION_CALL);
    intent.setData(Uri.parse("tel:" + number.trim()));
    startActivity(intent);
    

    这将有效地拨打提供的number电话号码。请记住,此操作需要android.permission.CALL_PHONE清单中的权限:

    <uses-permission android:name="android.permission.CALL_PHONE" />
    
  • 使用Intent.ACTION_DIAL

    Intent intent = new Intent(Intent.ACTION_DIAL);
    intent.setData(Uri.parse("tel:" + number.trim()));
    startActivity(intent);
    

    这显示了number已拨入的拨号器视图,但允许用户决定是否实际拨打电话。这不需要额外的权限。

于 2013-01-28T09:46:55.810 回答
1

借助以下代码,您可以调用ACTION_CALL Intent

int Number = 0377778888;
Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:" + number));
startActivity(callIntent);

并且您还需要将此权限添加到 AndroidManifest 文件

<uses-permission android:name="android.permission.CALL_PHONE" />
于 2013-01-28T09:43:49.163 回答
1

试试这个代码我改变了这个代码:

 no=txt_no.getText().toString().trim();

   String URI_TEL = "tel";
           Uri uri = Uri.fromParts(URI_TEL, no, null);

            Intent intent = new Intent(Intent.ACTION_CALL,uri);
            //intent.setData(Uri.parse(no));
            intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

            startActivity(intent);  
于 2013-01-28T10:00:46.540 回答