Android Q官方文档

AndroidQ新增的分区存储

  1. Android Q文件存储机制修改成了沙盒模式,和IOS神似
  2. 应用只能访问自己沙盒下的文件和公共媒体文件
  3. 对于Android Q以下,还是使用老的文件存储方式

权限变更

Android Q 更改了应用对设备外部存储设备中的文件(如:/sdcard )的访问方式。继续使用 READ_EXTERNAL_STORAGE 和 WRITE_EXTERNAL_STORAGE 权限,只不过当拥有这些权限的时候,你只能访问媒体文件,无法访问其他文件。

所以在适配Android Q 拍照问题必须使用沙盒模式来存储拍照文件:

    /*** 跳转到照相机*/private void gotoCamera() {Log.d("evan", "*****************打开相机********************");//    获取图片沙盒文件夹File dPictures = getExternalFilesDir(Environment.DIRECTORY_PICTURES);//图片名称String   mFileName = "IMG_" + System.currentTimeMillis() + ".jpg";//图片路径String  mFilePath = dPictures.getAbsolutePath()+"/"+mFileName;//创建拍照存储的图片文件
//        tempFile = new File(FileUtil.checkDirPath(Environment.getExternalStorageDirectory().getPath() + "/image/"), System.currentTimeMillis() + ".jpg");tempFile = new File(mFilePath);//跳转到调用系统相机Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {//设置7.0中共享文件,分享路径定义在xml/file_paths.xmlintent.setFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);Uri contentUri = FileProvider.getUriForFile(this, BuildConfig.APPLICATION_ID + ".fileprovider", tempFile);intent.putExtra(MediaStore.EXTRA_OUTPUT, contentUri);} else {intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(tempFile));}startActivityForResult(intent, REQUEST_CAPTURE);}

最后再发一个一行代码解决的方法:
在AndroidManifest.xml的application中添加一行:

    <application……android:requestLegacyExternalStorage="true……>

这样可以暂时关闭分区存储功能,但是在以后的版本中将会被废弃,如果有时间还是尽早做适配。

Android Q(10) 拍照问题相关推荐

  1. 华为android o适配名单,华为给出首批升级名单,这8款华为手机率先适配Android Q 10系统...

    原标题:华为给出首批升级名单,这8款华为手机率先适配Android Q 10系统 昨天,在谷歌的I/O大会上,谷歌正式向消费者介绍了Android Q 10系统中的新功能,除了自家的Pixel设备率先 ...

  2. Android Q 10.1 KeyMaster源码分析(二) - 各家方案的实现

    写在之前 这两篇文章是我2021年3月初看KeyMaster的笔记,本来打算等分析完KeyMaster和KeyStore以后再一起做成一系列贴出来,后来KeyStore的分析中断了,这一系列的文章就变 ...

  3. Android Q(10.0)版本新特性以及兼容性适配

    北京时间2019年3月14日Google正式对外发布Android Q Beta 1及预览版SDK,这意味着安卓开发者们又即将迎来一年一度的新版本适配工作了.Android Q 为开发者们带来了许多新 ...

  4. Android Q(10.0)的新功能和API

    Android Q功能和API 目录: 安全性增强 改进的生物识别认证对话框 直接从APK运行嵌入式DEX代码 TLS 1.3支持 Public Conscrypt API 连接功能 Wi-Fi网络连 ...

  5. Android Q(10.0)黑暗主题

    黑暗的主题 Android Q提供了一个新的Dark主题,适用于Android系统UI和设备上运行的应用程序. 黑暗主题有很多好处: 可以大幅减少用电量(取决于设备的屏幕技术). 提高低视力用户和对强 ...

  6. android q wifi,Android Q 10连接到网络wifinetworksspecifier

    由于Android Q不允许WifiManager添加网络,他们建议使用wifinetworksspecifier. 使用WifiNetworkSuggestionBuilder,我已经能够在状态栏上 ...

  7. android q(10.0)app应用卸载白名单

    1.概述 在10.0的系统产品开发中,对于app的卸载管理通常是有系统的PM负责管理的.所以在app应用卸载白名单功能的实现也是从PM在卸载方法中,按照白名单进行卸载 2.app应用卸载白名单的核心类 ...

  8. Android Q(10) 默认横屏

    直接上代码 开机动画(android那个动画) 横屏就改这些cpp h,但是在动画界面一段时间后,还是会竖屏,必须加下面的java代码. frameworks/base/cmds/bootanimat ...

  9. Android Q(10)简介

    Android Q 参考资料 官方 Android Q Beta 正式发布 | 精于形,安于内 Android Q 让用户优雅地管理位置权限 Android Q Beta 2 已上线!我们来看看都做了 ...

最新文章

  1. 简述SHELL全局环境变量与局变环境变量
  2. Reactor/Proactor的比较 (ZZ)
  3. java 字符串排列组合_Java 程序计算列出字符串的所有排列组合
  4. RabbitMQ队列持久化
  5. SAP官网发布的react教程
  6. Linux系统编程15:进程控制之如何创建进程和写时拷贝技术
  7. java 注销变量_[ Java学习基础 ] Java对象的创建和销毁
  8. win10下安装lxml
  9. 二分法求数组最大最小_JavaScript之如何求数组的最大值和最小值
  10. ffmpeg获取设备支持的分辨率_Qt音视频开发6-ffmpeg解码处理
  11. 设置 cookie过期时间
  12. vue2 自定义事件 v-model .sync
  13. 百度网盘kbengine - warring项目下载地址
  14. SENSOR DVP接口介绍
  15. 小程序的框架研究报告(开发框架、UI框架)
  16. 深入解析内存原理:DRAM的基本原理
  17. dsp版win10和普通版区别_图文详解win10各个版本之间有什么区别
  18. 摄像头集中监控软件系统
  19. websocket 发送数据大于0xFFFF(65535)的处理
  20. Java基本功一之JDK配置Java基本语法

热门文章

  1. [转]神经机器翻译(NMT)相关资料整理
  2. Fortran 2003:完美还是虚幻?(节选)
  3. 易遨房地产中介管理系统 v7.0 官方
  4. 非传染性的另类“红眼症”——表层巩膜炎
  5. APS.NET_MVC5学习笔记-给数据模型添加校验器
  6. Windows优化大师注册机源码
  7. 英语里的“大便、小便与放屁”
  8. SpringBoot秒杀系统
  9. OkHttp简单使用
  10. 杭州电子科技大学计算机专业考研分数线,2020杭州电子科技大学考研复试分数线已公布...