Android Q:调用系统相机拍照,并且获取图片
获取图片后上传可以看我这篇文章,封装好了后,只需要一个uri就行了
https://blog.csdn.net/qq_27454233/article/details/106661130
先说明AndroidQ以前的系统拍照:先选择文件夹,看文件夹是否建立,建立文件夹,拿到文件路径,然后命名照片名称,通过文件路径和拍照名称:
File file = new File(path);
再根据Android7.0来生成Uri:
public static Uri getUriForFile(Context context, File file) {if (context == null || file == null) {return null;}Uri uri;if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {uri = FileProvider.getUriForFile(context.getApplicationContext(),PROJECT_PROVIDE, file);} else {uri = Uri.fromFile(file);}return uri;}
然后通过这个uri调用系统api拍照,在onActivityResult中得知拍照完成,通过上面的path,获取文件,File file = new File(path):
/*** 拍照*/public static void takePhoto(Activity context, Uri uri) {Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);if (uri != null) {intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);context.startActivityForResult(intent, 2000);} else {ToastInstance.ShowText("出现未知错误,请重新操作");}}
onActivityResult就不放上来了,不是重点。
AndroidQ我这样是获取不到Uri的,因为我有检测文件夹这些,在文件路径那边就会到异常。从上面可以看出,只要区分AndroidQ和AndroidQ以下的Uri获取方式就行了:
AndroidQ获取方式,主要在于通过MediaStore提供的Uri,使用ContentResolver的insert接口,将文件保存到公共目录下,这样才能创建文件成功:
@RequiresApi(api = Build.VERSION_CODES.Q)public static Uri getUriForFile29(Context context, String name) {Uri uriForFile;ContentValues values = new ContentValues();values.put(MediaStore.Images.Media.DESCRIPTION, "JY_PICTURE");values.put(MediaStore.Images.Media.DISPLAY_NAME, name);values.put(MediaStore.Images.Media.MIME_TYPE, "image/jpg");values.put(MediaStore.Images.Media.TITLE, name);values.put(MediaStore.Images.Media.RELATIVE_PATH, Environment.DIRECTORY_DCIM);Uri external = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;ContentResolver resolver = context.getContentResolver();uriForFile = resolver.insert(external, values);return uriForFile;}
就可以了。喜欢的点个赞哦
Android Q:调用系统相机拍照,并且获取图片相关推荐
- 完美调用系统相机拍照,获取图片进行压缩并本地保存
在android开发中,调用相机的功能的频幕可谓相当之高,尤其在当前社交应用五花八门的情况下,相机的功能被开发的相当丰富,如美颜相机,美拍,微拍和最早的360相机等,可是制造多少"美女&qu ...
- android代码调用相机,Android如何调用系统相机拍照
本文实例为大家分享了Android调用系统相机拍照的具体代码,供大家参考,具体内容如下 /** * 调用系统相机 */ private void takePhoto() { Uri uri = nul ...
- Android手机调用系统相机拍照、裁剪以及获取Url上传图片
前言 最近一个人在公司搞独立开发,遇到问题只能自己解决,虽然过程比较坎坷,但是收获还是颇多的,一个人也是要坚强滴,最近弄用户的头像遇到了一些小问题,虽然上一款应用有头像上传,但是发现了其中的一些小问题 ...
- 调用系统相机拍照,裁剪图片
很重要的是加入权限,很多人因为没加入拍照权限而导致运行不能成功. <uses-permission android:name="android.permission.CAMERA&qu ...
- android 调用系统相机拍照 获取原图
博客源址:android 调用系统相机拍照 获取原图 博客时间:2013-04-23 11:08 好吧,为了这个问题又折腾了一整天.之前在网上找来的方法,如果在onActivityResult中直接用 ...
- Android开发 调用系统相机相册图片功能,解决小米手机拍照或者图片横竖相反问题,及小米手机相册图片路径问题
Android开发 调用系统相机相册图片功能,解决小米手机拍照或者图片横竖相反问题,及小米手机相册图片路径问题 1.调用相机,兼容7.0 AndroidManifest配置 <providera ...
- android 相机拍照返回,Android6.0机型上调用系统相机拍照返回的resultCode值始终等于0的问题...
版权声明:本文为博主原创文章,未经博主允许不得转载. 正常情况下调用系统相机拍照: 如果拍照后点击的是"确定"图标,返回的resultCode = -1(Activity.RESU ...
- Android多层嵌套Fragment中调用系统相机拍照以及裁剪的相关问题解决
多层嵌套Fragment中调用系统相机拍照.裁剪 最近公司项目有频繁使用相机拍照的需求,然后频繁的实际使用过程中遇到很多大大小小的坑,在此记录下. (ps.关于一些拍照后图片旋转.裁剪设置返回数据为t ...
- Android调用系统相机拍照并保存到指定位置
Android调用系统相机拍照并保存到指定位置 @Click(R.id.btn_takePhoto)void onclick() {Intent intent = new Intent(MediaSt ...
- android固定位置拍照,Android调用系统相机拍照并保存到指定位置
Android调用系统相机拍照并保存到指定位置 @Click(R.id.btn_takePhoto) void onclick() { Intent intent = new Intent(Media ...
最新文章
- Python爬取近十万条程序员招聘数据,告诉你哪类人才和技能最受热捧! | 原力计划...
- C++_泛型编程与标准库(六)
- 工作185:解决vue+el-element二级联动,选项选择后不显示的问题
- MBR, EFI, 硬盘分区表
- MySQL在windows的my-default.ini配置
- 解决RTMP推送时间戳问题引起HLS切片不均匀导致手机浏览器播放卡顿的问题
- 【专栏必读】软件工程导论第六版(张海藩)专栏学习笔记目录导航
- c51流水灯实验报告汇编语言,LED流水灯显示实验,单片机实验报告
- java 进制转换工具_Java实现的进制转换工具类完整示例
- linux软硬链接 计数,深入理解Linux的软链接和硬链接
- kmeans-用户分层
- 电脑上的歌曲怎么传到苹果手机上面,怎么把电脑上的歌导入苹果手机
- c语言编译器中cu是什么意思,.c文件调用.cu中的函数
- MySQL 的 MRR 到底是什么?
- 华三交换机如何进入配置_H3C交换机恢复出厂和各种基本配置方法
- 开源免费的WEB应用防火墙
- 熵、图像熵的意义及计算方法
- Linux 系统相关目录介绍
- 运用String.format格式化方法和消息枚举类型创建消息模板
- OFD文件怎么转换成PDF格式?这两种方法轻松实现转换
热门文章
- iOS-画一个钉钉圆形带名字的头像
- iOS Mac设置代理以及忽略部分IP代理
- asp.net 动态修改css样式,ASP.NET中直接用C# 动态修改CSS样式
- python怎么下载安装mac_Python 安装和环境搭建(Mac版)
- Springboot, link failure、SSL peer shut down incorrectly、Unsupported record version Unknown-0.0问题
- 浅谈数据的查找(二分查找)
- C2B前还有S2b,阿里携手产学研探索新零售时代的供应链未来
- 从爬取豆瓣影评到基于朴素贝叶斯的电影评论情感分析(下)
- 488 祖玛游戏 python
- +、-、*、/复数与整数运算符重载