Android 14 权限

  • 问题Android 14 按照视频播放类的应用 无法获取到权限。

原因是从 Android 13 开始,如果你的应用程序 targetSdk 指定到了 33 或以上,那么 READ_EXTRERNAL_STORGE 权限就完全失去了作用,申请它将不会产生任何效果。

与此相对应的,Google 新增了 READ_MEDIA_IMAGES、READ_MEDIA_VIDEO 和 READ_MEDIA_AUDIO 这三个运行时权限,分别用于管理手机的照片、视频和音频文件。以前只要申请 READ_EXTRERNAL_STORGE 权限就可以了,现在不行了,得按需申请。用户从而能够更加精细地了解你的应用到底申请了哪些媒体权限。

参考 https://www.cnblogs.com/joy99/p/17809113.html

解决方法: 手动从命令行去强制获取权限。

  • 手动赋值权限
  1. 对应用程序授予所有的运行时的权限

    $ adb install -g xxx.apk

  2. 对于某些权限,如"MANAGE_EXTERNAL_STORAGE"无法使用"-g"授予的,可以使用如下命令

    $ adb shell appops set --uid com.company.name MANAGE_EXTERNAL_STORAGE allow

  3. 还可以使用如下命令单独授予应用程序某一个权限,但是"MANAGE_EXTERNAL_STORAGE"无法授予权限

    $ adb shell pm grant com.comany.name android.permission.CAMERA

    ps -A | grep vlc

    cat /proc/pid/status

    通过上面的获取到每个user的uid。然后使用下面的命令赋值每个屏幕的vlc应用的权限。

    appops set --uid 1110125 MANAGE_EXTERNAL_STORAGE allow

    appops set --uid 1010125 MANAGE_EXTERNAL_STORAGE allow

相关推荐
Lehjy21 分钟前
【Linux】文件系统磁盘存储结构
android·linux·运维
BU摆烂会噶1 小时前
【LangGraph】节点内调用与状态隔离
android·人工智能·python·ui·langchain·人机交互
BU摆烂会噶2 小时前
【LangGraph】作为节点添加与状态共享
android·人工智能·python·ui·langchain·人机交互
刘大猫.3 小时前
重塑经典:Snapseed4.0全面登陆安卓,内置“胶片相机”与专业手动模式
android·数码相机·ai·机器人·大模型·算力·snapseed4.0
Languorous.3 小时前
MySQL聚合查询:COUNT、SUM、AVG用法,实战案例演示
android·数据库
沅霖3 小时前
Android Studio Java工程开发环境,怎么切换到Kotlin开发环境
android·kotlin·android studio
largecode3 小时前
企业名称能在来电显示吗?号码显示公司名服务打通多终端展示
android·xml·ios·iphone·xcode·webview·phonegap
龙之叶3 小时前
Android 12:从 Editor 到 FloatingToolbar 全局收敛长按菜单
android
Kapaseker4 小时前
Kotlin SharedFlow 的三个参数到底有啥用
android·kotlin
DogDaoDao4 小时前
Android MediaCodec 全面详解:从入门到精通
android·音视频·实时音视频·视频编解码·短视频·视频直播·mediacodec