Google发行Android Q版本也有很长一段时间了,华为应用市场已经要求要适配Android Q版本了,所以,我们也要去对Android Q进行适配。
先讲一下咱们这节用到的新特性

  1. Android Q文件存储机制修改成了沙盒模式,类似于iOS
  2. 应用只能访问自己沙盒下的文件和公共媒体文件

如果有想具体了解Android Q新版特效的可以去 官方文档
我们在这个地方记录一下Android Q版本进行拍照保存到相册的功能。

权限问题

Android Q不再需要申请文件读写权限,默认可以读写自己沙盒文件和公共媒体文件。因为相册属于公共媒体文件,所以,Android Q 可以不用 再动态申请权限。但是Android Q以下版本必须要申请权限才可以访问。

拍照

图片正常保存

拍照:Android Q之前版本使用的,将图片保存到指定文件夹,拍照完成后需要通知相册刷新

拍照代码

//       拍照存放路径File fileDir = new File(Environment.getExternalStorageDirectory(), "Pictures");if (!fileDir.exists()) {fileDir.mkdir();}//图片名称String fileName = "/IMG_" + System.currentTimeMillis() + ".jpg";//跳转到相机Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);Uri uri;//适配Android N之后版本if (Build.VERSION.SDK_INT >= 24) {uri = FileProvider.getUriForFile(this, ImagePickerProvider.getFileProviderName(this), new File(mFilePath));} else {//适配Android N版本之前uri = Uri.fromFile(new File(mFilePath));}intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);//跳转,需要在onActivityResult进行处理startActivityForResult(intent, 1111);

刷新相册代码

sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.parse("file://" + mFilePath)));

以上就是Android Q之前版本通用的拍照代码,有需要的可以直接复制就行

将图片保存到沙盒内


  1. 沙盒里面操作文件不再需要申请权限
  2. 沙盒中新建文件夹只能再系统指定的子文件夹中新建

Android Q版本使用,将图片存放到沙盒文件内,图库无法刷新,无法显示

//       获取图片沙盒文件夹File PICTURES = getExternalFilesDir(Environment.DIRECTORY_PICTURES);//图片名称mFileName = "IMG_" + System.currentTimeMillis() + ".jpg";//图片路径mFilePath = PICTURES.getAbsolutePath()+"/"+mFileName;//跳转到相机Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);Uri uri;if (Build.VERSION.SDK_INT >= 24) {uri = FileProvider.getUriForFile(this, ImagePickerProvider.getFileProviderName(this), new File(mFilePath));} else {uri = Uri.fromFile(new File(mFilePath));}intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);startActivityForResult(intent, 1111);

这个不用调用代码刷新相册库,因为刷新了也不能显示

适配Android Q拍照和读取相册图片相关推荐

  1. android 图片自动裁剪图片,Android实现拍照、选择相册图片并裁剪功能

    通过拍照或相册中获取图片,并进行裁剪操作,然后把图片显示到ImageView上. 当然也可以上传到服务器(项目中绝大部分情况是上传到服务器),参考网上资料及结合项目实际情况, 测试了多款手机暂时没有发 ...

  2. android拍照实现过程图,Android实现拍照截取和相册图片截取

    关于拍照截取和相册截取,看了网上很多资料,自己整理了一份比较详细的,供有需要的人参考 1  拍照 原理就是通过intent调用系统的相机,拍完照在回调进行操作,成功获取到拍完照的图片根据uri调用系统 ...

  3. Android webView拍照与展示相册图片

    一.准备工作 1.测试平板:android 7.0 2.androidSDK:26 二.实验步骤 2.1)利用android Studio 新建项目 2.2)增加webView标签在 activity ...

  4. Android开发 调用系统相机相册图片功能,解决小米手机拍照或者图片横竖相反问题,及小米手机相册图片路径问题

    Android开发 调用系统相机相册图片功能,解决小米手机拍照或者图片横竖相反问题,及小米手机相册图片路径问题 1.调用相机,兼容7.0 AndroidManifest配置 <providera ...

  5. 第三节 适配Android10的拍照、从相册获取代码,包括完整的权限申请和图片地址获取

    专栏目录 第一节 自定义轮播图的制作 第二节 底部导航栏菜单,炫酷菜单动画,背景变暗.按钮焦点获取 第三节 适配Android10的拍照.从相册获取代码,包括完整的权限申请和图片地址获取 第四节 百度 ...

  6. CocosCreator之KUOKUO带你搞反射-jsb读取相册图片

    摘要 在使用 CocosCreator 打包的原生应用中,我们可以通过引擎封装好的反射机制调用 Java 的静态方法,从而实现提示.相册.支付跳转等功能.本次内容为利用 jsb 读取相册图片. 正文 ...

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

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

  8. 小米android q适配机型,小米公布首批适配Android Q机型,然而“诚意”却不是很足?...

    原标题:小米公布首批适配Android Q机型,然而"诚意"却不是很足? 最近谷歌"断供"华为一事可谓是在业界引起了不小的波澜,有些人在得知这一消息之后就此选择 ...

  9. android内容提供器读取图片,android实现拍照或从相册选取图片

    从相册或拍照更换图片功能的实现:(取图无裁剪功能) 获取图片方式: (类似更换头像的效果) 1.手机拍照 选择图片: 2.相册选取图片: 本文只是简单实现该功能,页面展示有些简陋,运行效果图如下: 创 ...

最新文章

  1. python3socket非阻塞_利用Python中SocketServer 实现客户端与服务器间非阻塞通信
  2. 《妙解Hibernate 3.X》读书笔记一-Hibernate概述及环境搭建
  3. Vim的简单实用(存活篇)
  4. 晒晒公司整改后的拓扑图和设备
  5. Ubuntu 16.04.6 LTS 发布:紧急修复 APT 漏洞
  6. 富贵包这种常见颈椎病怎么改善?
  7. 前端学习(3218):批量传递props
  8. Linux的基本使用
  9. Chrome Workspace开发者调试工具
  10. IOS::.a的生成,以及模拟器和真机.a 的合并
  11. Windows学习总结(8)——DOS窗口查看历史执行过的命令的三种方式
  12. 全站仪坐标计算机公式,全站仪使用方法及坐标计算讲解
  13. oracle数据库服务器启动后需执行的命令(SecureCRT中执行)
  14. 32位存储字长存储double_1GB多大?1GB与1MB的关系?详细数据存储单位转换来了...
  15. 游戏开发之使用类封装双链表数据结构及双链表迭代器初版(C++基础)
  16. uos的安全检测:sqlite-jdbc访问/tmp目录的提示
  17. wifi定位算法 java_机器学习在滴滴网络定位中的探索和实践
  18. 迅捷pdf在线转换html,迅捷pdf在线转换成word免费版在线版
  19. Python学习,55道django面试题,来试试吧
  20. 让 Microsoft Office 下课!强烈推荐WPS2005!!

热门文章

  1. 软件的生命周期——思维导图
  2. CAD可以用数位板吗?矢量图有必要用数位板吗?
  3. 程序员崩溃的N个瞬间
  4. 符号引用和直接引用的区别
  5. 04 DIY流星观测站——镜头简介
  6. [机缘参悟-46]:鬼谷子-第十谋篇-谋者,智慧之意也
  7. [读书笔记]从物联到万联——Node.js与树莓派万维物联网构建实战
  8. 域控ntp服务器配置,Win1216域控设置NTP服务器
  9. setTimeout/setInterval与requestAnimationFrame的区别?
  10. Excel | 基因名都被Excel篡改了怎么办呢!?~(附3种解决方案)