Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android运行时权限-完全访问SIP帐户/呼叫/消息_Android_Android Permissions_Sip - Fatal编程技术网

Android运行时权限-完全访问SIP帐户/呼叫/消息

Android运行时权限-完全访问SIP帐户/呼叫/消息,android,android-permissions,sip,Android,Android Permissions,Sip,我在Android phone one plus 7T Android 10版本中面临一个关于SIP呼叫的许可问题 以下是我在清单中添加的权限: <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

我在Android phone one plus 7T Android 10版本中面临一个关于SIP呼叫的许可问题

以下是我在清单中添加的权限:

 <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.RECORD_AUDIO" />
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
    <uses-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <uses-permission android:name="android.permission.USE_SIP" />
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
    <uses-permission android:name="android.permission.CONFIGURE_SIP" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.USE_FULL_SCREEN_INTENT" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
    <uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
    <uses-feature android:name="android.software.sip.voip" />

    <uses-feature
        android:name="android.hardware.wifi"
        android:required="false" />
    <uses-feature
        android:name="android.hardware.microphone"
        android:required="true" />
    <uses-feature
        android:name="android.hardware.touchscreen"
        android:required="false" />
    <uses-feature
        android:name="android.hardware.bluetooth"
        android:required="false" />
    <uses-feature
        android:name="android.hardware.screen.portrait"
        android:required="false" />
    <uses-feature
        android:name="android.hardware.camera"
        android:required="false" />
    <uses-feature
        android:name="android.hardware.camera.autofocus"
        android:required="false" />
    <uses-feature
        android:name="android.hardware.camera.flash"
        android:required="false" />
    <uses-feature
        android:name="android.hardware.camera.front"
        android:required="false" />

以下是运行时权限的代码:

public static String[] PERMISSIONS = {Manifest.permission.CAMERA, Manifest.permission.USE_SIP, Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.RECORD_AUDIO};
    private static final int PERMISSION_REQUEST_CODE = 200;
    private static final int APP_UPDATE_REQUEST_CODE = 21986;

 public boolean requestAllpermission() {
        int result;
        List<String> listPermissionsNeeded = new ArrayList<>();
        for (String p : PERMISSIONS) {
            result = ContextCompat.checkSelfPermission(getApplicationContext(), p);
            if (result != PackageManager.PERMISSION_GRANTED) {
                listPermissionsNeeded.add(p);
            }
        }
        if (!listPermissionsNeeded.isEmpty()) {
            ActivityCompat.requestPermissions(this, listPermissionsNeeded.toArray(new String[listPermissionsNeeded.size()]), PERMISSION_REQUEST_CODE);
            return false;
        }
        return true;
    }
public static String[]PERMISSIONS={Manifest.permission.CAMERA,Manifest.permission.USE\u SIP,Manifest.permission.WRITE\u EXTERNAL\u STORAGE,Manifest.permission.READ\u EXTERNAL\u STORAGE,Manifest.permission.RECORD\u AUDIO};
私有静态最终int权限\请求\代码=200;
私有静态最终内部应用程序更新请求代码=21986;
公共布尔值requestAllpermission(){
int结果;
List ListPermissionsNeed=new ArrayList();
for(字符串p:权限){
结果=ContextCompat.checkSelfPermission(getApplicationContext(),p);
如果(结果!=已授予PackageManager.PERMISSION){
所需的列表权限。添加(p);
}
}
如果(!ListPermissionsNeed.isEmpty()){
ActivityCompat.requestPermissions(此,ListPermissionsNeed.toArray(新字符串[ListPermissionsNeed.size()]),权限\请求\代码);
返回false;
}
返回true;
}
SIP弹出窗口的权限也会显示给用户,但除此之外,它还要求在应用程序信息部分的图像中显示一个以上的权限。默认情况下会被拒绝,因为即使在允许使用Sip权限后,用户也无法进行Sip调用

在playstore权限列表中,我可以看到它显示了对SIP帐户/呼叫/消息的完全访问权限。如何在用户端请求此权限