zoukankan      html  css  js  c++  java
  • Android中拨打电话的两种实现

    Android中拨打电话的两种实现

    实现方法一:由App界面跳转到拨打电话界面,这种实现方法不需要申请权限,可以仅用java代码实现

    Intent intent = new Intent(Intent.ACTION_CALL);
                    Uri data = Uri.parse("tel:" + "135xxxxxxxx");
                    intent.setData(data);

    实现方法二:在当前App界面中直接拨打电话,但是有些第三方的Rom需要用户选择是否拨打,这种实现方法不仅需要在AndroidManifest.xml文件中申请权限,还需要在java代码中动态申请权限。

    在AndroidManifest.xml文件中申请权限 

    <uses-permission android:name="android.permission.CALL_PHONE"></uses-permission>

    在java中的代码实现

    Intent intent = new Intent(Intent.ACTION_CALL);
                    Uri data = Uri.parse("tel:" + "135xxxxxxxx");
                    intent.setData(data);
    //                动态申请权限
                    if (ActivityCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
                        // TODO: Consider calling
                        //    ActivityCompat#requestPermissions
                        // here to request the missing permissions, and then overriding
                        //   public void onRequestPermissionsResult(int requestCode, String[] permissions,
                        //                                          int[] grantResults)
                        // to handle the case where the user grants the permission. See the documentation
                        // for ActivityCompat#requestPermissions for more details.
                        return;
                    }
                    startActivity(intent);

     红色背景部分是动态申请权限的代码,当写startActivity(intent);这一步时会报错,自动纠错后会自动导入这一步动态申请权限的代码

  • 相关阅读:
    BD String
    1114
    1083
    1084
    1108
    1087
    1145
    1217
    1164
    反射
  • 原文地址:https://www.cnblogs.com/lyd447113735/p/8202516.html
Copyright © 2011-2022 走看看