0

私のアプリは Android パーミッション action_dial を使用しています。許可を必要としないようにコードを変更するにはどうすればよいですか? 私は無許可で呼び出すことができる必要があります

これはコードです:

私のせいではありませんが、この投稿はコードでいっぱいです。


    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
        // Older Version No need to request Permission
        String dial = "tel:" + phoneNo;
        fragment.startActivity(new Intent(Intent.ACTION_DIAL, Uri.parse(dial)));
    } else {
        // Need to request Permission
        if (fragment.getActivity() != null) {
            if (ContextCompat.checkSelfPermission(fragment.getActivity(), Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
                fragment.requestPermissions(new String[]{
                        Manifest.permission.CALL_PHONE
                }, Constants.REQUEST_CODE__PHONE_CALL_PERMISSION);
            } else {
                String dial = "tel:" + phoneNo;
                fragment.startActivity(new Intent(Intent.ACTION_DIAL, Uri.parse(dial)));
            }
        }
    }
}


                                             int[] grantResults, Fragment fragment, String phoneNo) {
    if (requestCode == Constants.REQUEST_CODE__PHONE_CALL_PERMISSION) {
        if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
            callPhone(fragment, phoneNo);
        } else {
            Utils.psLog("Permission not Granted");
        }


    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
        // Older Version No need to request Permission
        String dial = "tel:" + phoneNo;
        activity.startActivity(new Intent(Intent.ACTION_CALL, Uri.parse(dial)));
    } else {
        // Need to request Permission
        if (activity != null) {
            if (ContextCompat.checkSelfPermission(activity, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
                activity.requestPermissions(new String[]{
                        Manifest.permission.CALL_PHONE
                }, Constants.REQUEST_CODE__PHONE_CALL_PERMISSION);
            } else {
                String dial = "tel:" + phoneNo;
                activity.startActivity(new Intent(Intent.ACTION_CALL, Uri.parse(dial)));
            }
        }
    }

4

3 に答える 3

0

無断で直接発信することはできません。必要な番号でアプリの上にあるダイヤラーを開くことができます。ユーザーは次に緑色の通話ボタンをクリックする必要があります。これを行うには、このコードを使用します

Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:" + phoneNumberStr));

startActivity(callIntent);
于 2019-12-30T12:12:42.110 に答える