Android 各个版本授予应用信息权限及单次弹窗确认权限

server/2024/11/13 14:35:06/

依次添加需要的权限,进行默认打开应用信息的权限开关;

以下是不同版本提供的不同的授权方法进行授权:

O版本:

/frameworks/base/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java

grantRuntimePermissionsLPw ()方法

    //*/ grant custom apk all permissions
            PackageParser.Package customApk = getPackageLPr("com.nrpptt.application");
            grantRuntimePermissionsLPw(customApk, STORAGE_PERMISSIONS, userId);
            grantRuntimePermissionsLPw(customApk, CAMERA_PERMISSIONS, userId);
            grantRuntimePermissionsLPw(customApk, MICROPHONE_PERMISSIONS, userId);
            grantRuntimePermissionsLPw(customApk, CONTACTS_PERMISSIONS, userId);
            grantRuntimePermissionsLPw(customApk, LOCATION_PERMISSIONS, userId);
        grantRuntimePermissionsLPw(customApk, PHONE_PERMISSIONS, userId);
        //*/

P版本:

/frameworks/base/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java

grantRuntimePermissions()方法

   //*/allow soundrecorder permissions
         grantRuntimePermissions(getSystemPackage("com.android.soundrecorder");, STORAGE_PERMISSIONS, userId);
         grantRuntimePermissions(getSystemPackage("com.android.soundrecorder");, MICROPHONE_PERMISSIONS, userId);

grantRuntimePermissions(getSystemPackage("com.android.soundrecorder");, CAMERA_PERMISSIONS, userId);

...................................
     //*/

Q版本:

/frameworks/base/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java

grantPermissionsToSystemPackage()方法

//*/

grantPermissionsToSystemPackage("com.veclink.vecsipsimple", userId,
                        CONTACTS_PERMISSIONS, MICROPHONE_PERMISSIONS,
                        PHONE_PERMISSIONS, SMS_PERMISSIONS, CAMERA_PERMISSIONS,
                        STORAGE_PERMISSIONS,ALWAYS_LOCATION_PERMISSIONS);

        //*/


        //*/add permision
        grantPermissionsToSystemPackage("com.iflytek.inputmethod", userId,
ALWAYS_LOCATION_PERMISSIONS,PHONE_PERMISSIONS,CONTACTS_PERMISSIONS,SMS_PERMISSIONS,MICROPHONE_PERMISSIONS,STORAGE_PERMISSIONS,CAMERA_PERMISSIONS);      
        //*/
        //*/add permision
        grantPermissionsToSystemPackage("com.shenyaocn.android.usbcamera", userId,
ALWAYS_LOCATION_PERMISSIONS,PHONE_PERMISSIONS,CONTACTS_PERMISSIONS,SMS_PERMISSIONS,MICROPHONE_PERMISSIONS,STORAGE_PERMISSIONS,CAMERA_PERMISSIONS);      
        //*/

R版本:

/frameworks/base/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java

grantPermissionsToPackage()方法

grantPermissionsToSystemPackage()方法

//*/

grantPermissionsToPackage(pm, "com.veclink.vecsipsimple", userId, false, true,
                CAMERA_PERMISSIONS, ALWAYS_LOCATION_PERMISSIONS, MICROPHONE_PERMISSIONS,
                STORAGE_PERMISSIONS, PHONE_PERMISSIONS, SMS_PERMISSIONS);
        //*/

//*/

grantPermissionsToSystemPackage(pm, "com.corget", userId,
ALWAYS_LOCATION_PERMISSIONS,PHONE_PERMISSIONS,CONTACTS_PERMISSIONS,SMS_PERMISSIONS,MICROPHONE_PERMISSIONS,STORAGE_PERMISSIONS,CAMERA_PERMISSIONS);      
        //*/

S版本:

/frameworks/base/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java

grantPermissionsToSystemPackage()


    private void grantDefaultSystemHandlerPermissions(PackageManagerWrapper pm, int userId) {
        Log.i(TAG, "Granting permissions to default platform handlers for user " + userId);

//*/grant all permissions in appinfo or single dialog : NOTIFICATION_PERMISSIONS
        grantPermissionsToSystemPackage(pm,"com.iflytek.speechcloud", userId,
ALWAYS_LOCATION_PERMISSIONS,PHONE_PERMISSIONS,CONTACTS_PERMISSIONS,SMS_PERMISSIONS,MICROPHONE_PERMISSIONS,STORAGE_PERMISSIONS,CAMERA_PERMISSIONS,CALENDAR_PERMISSIONS,SENSORS_PERMISSIONS,NEARBY_DEVICES_PERMISSIONS);
        //*/

 

T版本:

/frameworks/base/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java

grantPermissionsToSystemPackage()方法

 //*/add permision
        grantPermissionsToSystemPackage(pm,"com.shli.interphone", userId,
ALWAYS_LOCATION_PERMISSIONS,PHONE_PERMISSIONS,CONTACTS_PERMISSIONS,SMS_PERMISSIONS,MICROPHONE_PERMISSIONS,STORAGE_PERMISSIONS,CAMERA_PERMISSIONS
,NEARBY_DEVICES_PERMISSIONS,CALENDAR_PERMISSIONS,NOTIFICATION_PERMISSIONS,SENSORS_PERMISSIONS);
        //*/
        //*/add permision
        grantPermissionsToSystemPackage(pm,"cn.com.ctsi.android.ctchat", userId,
ALWAYS_LOCATION_PERMISSIONS,PHONE_PERMISSIONS,CONTACTS_PERMISSIONS,SMS_PERMISSIONS,MICROPHONE_PERMISSIONS,STORAGE_PERMISSIONS,CAMERA_PERMISSIONS
,NEARBY_DEVICES_PERMISSIONS,CALENDAR_PERMISSIONS,NOTIFICATION_PERMISSIONS,SENSORS_PERMISSIONS);
        //*/ 


http://www.ppmy.cn/server/141260.html

相关文章

多模态AI:开启人工智能的新纪元

在人工智能的璀璨星河中,多模态AI技术正逐渐成为一颗耀眼的明星。随着科技的飞速发展,AI技术正以前所未有的速度迈向新的高峰,其中多模态AI的兴起尤为引人注目。本文将深入探讨多模态AI的定义、技术原理、应用场景以及未来发展趋势。 ps.图…

Flutter中有趣的级联语法

目录 前言 一、基本语法 二、级联语法的优点 三、使用场景 1.初始化对象的多个属性 2.Widget 链式构建 3.调用多个方法 4.链式操作异步请求 前言 在 Flutter(Dart)中,级联操作符(cascade notation) 使用两个点…

dolphin 配置data 从文件导入hive 实践(一)

datax 支持多种数据源的相互读写,作为开源软件,提供了离线采集功能,方便系统开发,过程中遇到诸多配置,需要开发者自己探索,免费同样有成本 配置模板 {"setting": {},"job": {"s…

Prompt 工程

Prompt 工程 1. Prompt 工程简介 “预训练-提示预测”范式是近年来自然语言处理(NLP)领域的一个重要趋势,它与传统的“预训练-微调-预测”范式相比,提供了一种更为灵活和高效的模型应用方式。 Prompt工程是指在预训练的大型语言…

Knowledge Graph-Enhanced Large Language Models via Path Selection

研究背景 研究问题:这篇文章要解决的问题是大型语言模型(LLMs)在生成输出时存在的事实不准确性,即所谓的幻觉问题。尽管LLMs在各种实际应用中表现出色,但当遇到超出训练语料库范围的新知识时,它们通常会生…

(蓝桥杯C/C++)——基础算法(上)

目录 一、二分法 1.二分法简介 二分法简介-解题步骤 2.整数二分-简介 整数二分-模板 3.浮点二分-简介 浮点二分-模板 4.二分答案-简介 二分答案-模板​​​​​​​ 二、位运算 1.位运算简介 2.常见的位运算 按位与AND(&) 按位或OR( | ) 按位异或…

【HCIP园区网综合拓扑实验】配置步骤与详解(已施工完毕)

一、实验要求 实验拓扑图如上图所示 1、按照图示的VLAN及IP地址需求,完成相关配置 2、要求SW1为VLAN 2/3的主根及主网关 SW2为vlan 20/30的主根及主网关 SW1和SW2互为备份 3、可以使用super vlan(本实验未使用) 4、上层…

【Pytorch】基本语法

Pytorch的基本语法 张量简介 ​ 张量 Tensor 是机器学习的基本构建模块,是以数字方式表示数据的形式. 在张量语言(用于描述张量的语言)中,张量将具有三个维度,一个维度表示 colour_channels 、 height 和 width 。 张量的基本使…