Android 14系统应用权限详解
创作时间:
作者:
@小白创作中心
Android 14系统应用权限详解
引用
51CTO
1.
https://blog.51cto.com/u_15777557/12558869
在Android 14系统中,System Apps(系统应用)是预装在设备上的应用,通常由设备制造商、操作系统开发者(如Google)或移动运营商提供。这些应用享有更高的权限级别,但也受到严格的安全管理。以下是关于System Apps权限的详细说明,包括变化和注意点:
System Apps权限的特点
预装特权
- System Apps 通常安装在
/system/app
或
/system/priv-app
目录下。 - 这些应用默认具有
system
签名,与系统框架共享相同的权限范围。
平台签名权限
- 系统应用若使用与平台相同的签名,可以请求一些普通应用无法访问的权限,如:
- READ_PRIVILEGED_PHONE_STATE:读取用户设备的敏感信息(如IMEI)。
- MANAGE_USERS:管理设备上的用户账户。
- PACKAGE_USAGE_STATS:访问应用使用数据。
- 这些权限只能通过
signature
级别授权。
Privileged Apps
- 位于
/system/priv-app
目录下的应用称为特权应用(Privileged Apps)。 - 特权应用可以请求额外的权限,如:
- INSTALL_PACKAGES:静默安装应用。
- DELETE_PACKAGES:静默卸载应用。
- WRITE_SECURE_SETTINGS:修改
Settings.Secure
中的安全设置。 - 必须在设备的
privapp-permissions.xml
中显式声明这些权限。
权限授予方式
- 普通权限(Normal Permissions):自动授予。
- 危险权限(Dangerous Permissions):即使是系统应用,也需要通过运行时权限申请。
- 特权权限(Privileged Permissions):需要在
privapp-permissions.xml
中配置,或者与系统签名匹配。
Android 14的权限变化
Android 14 在安全性和权限管理方面进行了增强,包括对系统应用的限制和优化:
权限精细化
动态权限分区
- 针对不同的应用类型,Android 14 引入了更细化的权限分区:
- system_core
应用:核心系统应用,权限最高。 - default_system
应用:普通系统应用,权限受到限制。 - 这种分区限制了低级别系统应用滥用高权限。
动态权限管理
- 运行时权限模型进一步强化,即使是系统应用,也需要动态申请一些危险权限。
- Android 14 禁止系统应用使用某些过时或危险的权限(如:WRITE_EXTERNAL_STORAGE)。
隐私保护增强
对用户数据的访问限制
- ACCESS_FINE_LOCATION和ACCESS_BACKGROUND_LOCATION等权限需要更明确的用户同意。
- 系统应用也不能绕过这些限制。
感知权限的记录与监控
- Android 14 继续改进了权限监控机制,允许用户查看系统应用何时访问了敏感数据(如摄像头、位置、麦克风)。
文件访问权限的变化
- Android 14 对存储权限进行了限制:
- 应用必须使用分区存储(Scoped Storage),无法直接访问
/data
或
/sdcard
根目录。 - 系统应用如果需要全面文件访问,必须申请MANAGE_EXTERNAL_STORAGE权限,并在设置中启用。
自定义权限的限制
- 系统应用创建的自定义权限必须显式声明访问策略,并受到 Android 系统的动态管理。
配置权限的文件
以下是影响系统应用权限的关键配置文件:
**
AndroidManifest.xml
**
- 系统应用声明的权限大多通过此文件定义,例如:
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
</manifest>
**
privapp-permissions.xml
**
- 位于
/etc/permissions/
,此文件定义了特权应用的权限。例如:
<privapp-permissions>
<privapp-package name="com.example.privilegedapp">
<permission name="android.permission.INSTALL_PACKAGES" />
<permission name="android.permission.DELETE_PACKAGES" />
</privapp-package>
</privapp-permissions>
**
platform.xml
**
- 位于
/etc/permissions/
,定义了权限与应用签名的匹配关系。
**
default-permissions.xml
**
- 定义了默认授予的权限,例如对预装应用授予某些危险权限。
注意事项
滥用检测
- Android 14 加强了对系统应用的滥用检测,违规的系统应用可能被用户禁用或卸载。
特权权限的审查
- 如果特权应用的权限未在配置文件中声明,应用可能无法启动。
定期更新
- 厂商需要定期更新系统应用,以确保兼容性和安全性。
开发建议
- 遵循最小权限原则(Least Privilege Principle),避免不必要的高权限申请。
总结
在Android 14中,System Apps的权限体系得到了进一步的精细化和限制,以提高设备安全性和隐私保护。开发者和厂商需要特别关注配置文件中的权限声明,以及遵守Google最新的权限策略,以避免兼容性问题。
热门推荐
高中春招与高考:两条通往高等教育的不同路径
【电吉他】如何攻破乐句的「痛点难点」
表达大小的英语:掌握这些词语,轻松应对各种场景
主动悬架基础知识
家用伍德灯与紫光灯识别猫咪猫藓
芦荟的养殖方法和注意事项,光照、土壤、浇水、温度全解析
揭秘灯塔水母:海洋中的永生之谜
哪种材质的筷子更适合家用?为了家人健康,建议大家搞懂再买
感冒通常可以分为风寒感冒和风热感冒两大类,这两者用药都有区别
青年志愿者以行动定义新时代雷锋精神
脚本语言与编程语言:定义、特点及应用场景全解析
相机15种曝光调节方式是什么?如何正确使用它们?
结膜炎和红眼病的区别
油锯是选二冲程好还是四冲程好?怎么选择油锯
最新研究:高碳水也能控糖,关键在于这个成分
小孩牙齿有裂纹是怎么回事?看完这些你就明白了!儿童牙齿裂缝需要怎么修复
职工丧葬费和抚恤金怎么领取
每天喝可乐的人后来怎样了?5个惊喜VS 3个警告
“事不过三”:从历史典故到现代启示
银行创新型存款利率与市场需求的匹配度分析
如何明确融资轮次的划分标准?这种划分标准对企业发展有哪些作用?
南京三甲妇科医院排名
孩子可以买房吗?揭秘未成年买房相关政策
父母黑户是否影响孩子买房贷款资格?项目融资中的关键因素解析
哈布斯堡家族的昔日辉煌与现代转变
HRBP的工作职责如何体现其价值?
如何选出心仪的ETF?
何时选择OSPF作为路由协议
科技赋能智慧养老,中日企业积极探索产业发展新模式
智慧养老:科技赋能居家养老新篇章