如何适配AndroidQ拍照和读取相册图片?-创新互联
不懂如何适配AndroidQ拍照和读取相册图片??其实想解决这个问题也不难,下面让小编带着大家一起学习怎么去解决,希望大家阅读完这篇文章后大所收获。
十载的镇宁网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。营销型网站的优势是能够根据用户设备显示端的尺寸不同,自动调整镇宁建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联建站从事“镇宁网站设计”,“镇宁网站推广”以来,每个客户项目都认真落实执行。Google发行Android Q版本也有很长一段时间了,华为应用市场已经要求要适配Android Q版本了,所以,我们也要去对Android Q进行适配。
先讲一下咱们这节用到的新特性
- Android Q文件存储机制修改成了沙盒模式,类似于iOS
- 应用只能访问自己沙盒下的文件和公共媒体文件
如果有想具体了解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);
文章题目:如何适配AndroidQ拍照和读取相册图片?-创新互联
网页URL:http://myzitong.com/article/dsgoip.html