在日常开发中,我们的APP中经常会有拍照的功能,很多的产品经理会要求把拍照和拍照后编辑的体验弄成和微信一样。

先来看看微信的拍照界面和编辑界面

微信拍照的两个优点 :1.响应速度快,从点击拍照按钮,到编辑界面出来你  几乎无延迟。

2.编辑界面的图片和预览界面毫无差别,所见即所得

今天就讲讲如何实现速度快和照片无差别

先来看一下camera2的拍照 Android 使用 Camera2 完成预览和拍照 - 走看看

camera2拍照是通过imageReader实现照片保存的

这个方式通常会有一个问题就是照片的处理保存需要很长的时间,而且需要精确的控制每个手机的分辨率,否则很容易出现拍完照展示出来的图片和预览的不一致 ,中间有明显的变化过程

再来看看cameraX,Android的camerax预览拍照_Jason_Lee155的博客-CSDN博客_android 相机预览拍照
cameraX拍照比较简单,

通过imageCapture  可以配置照片的比例,质量 ,方向等,但是也是存在照片生成时间长,预览和实际得到的照片存在一定比例的缩放问题。

可见传统的方案都多少有问题。。。。。这就是我们今天要说的问题

实际上在cameraX使用的PreviewView和camera2中使用的TextureView中  都有gitBitmap()这个方法

这个方法就是获取当前预览的瞬时图像,那我们的代码完全可以这样写

当点击按钮的时候,直接将当前预览的一帧图像,保存成一张照片

如果需要编辑,则直接将bitmap  显示到编辑的界面上,编辑完了再保存到文件中

这样就能做到点击拍照按钮以后瞬时反应,且图像跟预览的毫无差别,实现类似微信的拍照效果

但是这个方法只针对于固定需求,因为这样拿到的图像,生成照片质量是比较差的,需要高质量的照片还是需要等待,这也是微信拍照编辑出来的照片质量比较差的原因

好了  今天就到这里了,希望能帮到大家

Android 仿微信朋友圈拍照原理解读,技术分析相关推荐

  1. android com.mylhyl,Android 高仿微信朋友圈拍照上传功能

    模仿微信朋友圈发布动态,输入文字支持文字多少高度自增,有一个最小输入框高度,输入文字有限制,不过这些都很easy! 1. photopicker的使用 这是一个支持选择多张图片,点击图片放大,图片之间 ...

  2. android 微信高仿,Android 高仿微信朋友圈拍照上传功能

    模仿微信朋友圈发布动态,输入文字支持文字多少高度自增,有一个最小输入框高度,输入文字有限制,不过这些都很easy! 1. PhotoPicker的使用 这是一个支持选择多张图片,点击图片放大,图片之间 ...

  3. android 仿微信朋友圈 评论,2020年android 仿微信朋友圈 评论

    2020年android 仿微信朋友圈 评论 1.如果有人问我:那些艰难的岁月你是怎么熬过来的?我想我只有一句话回答:我有一种强大的精神力量支撑着我,这种力量名字叫"想死又不敢" ...

  4. Android自定义弹窗模仿微信,Android 仿微信朋友圈点赞和评论弹出框功能

    本文简单模仿微信朋友圈的点赞和评论弹出框,布局等细节请忽略,着重实现弹出框.发评论,及弹出位置的控制. 1. 微信弹出框 微信朋友圈的点赞和评论功能,有2个组成部分: 点击左下角的"更多&q ...

  5. Android仿微信朋友圈发图片和文字

    Android仿微信朋友圈发图片和文字的一个开源项目,其在github上的项目主页是:https://github.com/zhangphil/FangWeiXinPengYouQuanFaTuPia ...

  6. Android 仿微信朋友圈添加图片

    github地址(欢迎下载Demo) https://github.com/zhouxu88/WXCircleAddPic 老习惯,先上图,着急用的朋友,直接带走Demo,先拿来用吧,毕竟老板催的紧, ...

  7. Android仿微信朋友圈4实现评论动态时输入框和软键盘自动定位到内容下面

    最近做完朋友圈功能后,测试提出一个功能优化,在某些发布的动态下评论时软键盘和输入框遮当内容了,这个用户体验感觉不是很好,于是根据今日头条和其他热门的App评论时软键盘和输入框都是在内容下面.Scrol ...

  8. Android仿微信朋友圈6之实现消息提醒功能

    之前有朋友问我消息提醒咋实现,我一直没有整理出来,今天就放出来.微信朋友圈的消息提醒就是收到朋友的评论后背景底部显示消息条数和评论用户,顶部是一张相册背景和当前用户昵称头像. 1.消息提醒的布局如下: ...

  9. Android仿微信朋友圈3评论输入框及点击外部和列表滑动时隐藏输入框和键盘解决方法

    接着上一篇的评论点赞弹框之后,这次来说说微信的评论输入框,点击屏幕外部评论框和键盘消失,滑动列表时输入框和键盘也要消失,这里不是说一定要舔微信啥的,只是单纯从技术角度出发,分析原理和实现,解决我们自己 ...

最新文章

  1. 第十九篇:主题建模Topic Modelling
  2. RabbitMQ (一)基础概念
  3. 一个高并发请求的算法
  4. python 如何查看模块所有方法-如何查看python的模块
  5. Spring Security——实现登录后跳转到登录前页面
  6. python 的datetime模块使用
  7. linux c计算两个int相除求百分比的实现
  8. svn   /lib64/libz.so.1: no version information available
  9. Navicat for MySQL再谈之无奈之下还是去安装Navicat Premium
  10. Atitit.电脑图片与拍摄图片的分别
  11. Python基础语法测验习题(有答案版)
  12. java学生管理系统项目实训报告
  13. 数据库三大范式、BCNF范式、反范式
  14. TSO、UFO、GSO、LRO、GRO和RSS介绍
  15. 如意云路由刷PandoraBox
  16. php薄饼,薄饼的做法大全
  17. 图像算法工程师需要这样
  18. GD库的中文问题(推荐)
  19. 独立站好做吗?独立站跨境电商怎么做?
  20. 等保测评(linux)

热门文章

  1. api可以主动采集用户数据吗_数据采集方式有哪些,都有什么特点?
  2. 360浏览器服务组件怎么关闭,开机总是弹出新闻窗
  3. 360 se html document 广告,360浏览器弹窗广告如何关闭?教你彻底删除屏蔽360se.exe广告!...
  4. idea网页预览功能_IntelliJ IDEA预览布局定义文件的输出
  5. C刷题:一个方法团灭LeetCode股票买卖问题
  6. 广东一名男子用火龙果喂猪,被猪翻白眼,实在是太搞笑了。
  7. 某211高校食堂饭菜价格贵得离谱惹争议!学生:吃不起饭了!
  8. 微服务 tars php,TARS-PHP
  9. 【TARS】网关TarsGateway
  10. AutoMake教程