Android开发之App拍照系统相册展示
需求:客户提出一个需求,App拍照的照片需要直接在系统相册中可以查看得到。
解决方案:
第一次尝试:刚开始想到的是网上这三种方式:http://blog.csdn.net/qq_34157407/article/details/51407992
发现使用广播或者插入图库都无法实现在系统相册中查看。我的适配机型是:魅族MX5.
第二次尝试:当没有合适的方法的时候,就自己动手推测分析。经过几次的测试系统相册所关联的逻辑,以及系统照相机拍照后的照片存储规则。推测将照片存储在DCIM文件夹中,相册才会加载的首要条件。最终,经过测试,得出关于我适配机型的解决方案:
1、拍照后照片存储于系统相册关联的文件夹DCIM下(区别与其他方法的地方);
2、发送广播,通知系统相册刷新。
代码如下:
保存照片并通知相册更新广播:
// 将照片插入到系统相册
BitmapUtils.saveBitmap(addbmp, ru.fileName,Environment.getExternalStorageDirectory() + "/DCIM/");
context.sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.fromFile(new File(Environment.getExternalStorageDirectory()+ "/DCIM/" + ru.fileName + ".jpg"))));
保存照片到指定路径下:
/*** 保存图片到指定的Path路径下* * @author vaecer* @param bm* 图片bitmap* @param picName* 图片名字* @param path* 图片保存的路径*/public static void saveBitmap(final Bitmap bm, final String picName, final String path) {new Thread(new Runnable() {@Overridepublic void run() {// TODO Auto-generated method stubtry {// String realPath =// Environment.getExternalStorageDirectory() + path;File f = new File(path, picName + ".jpg");if (f.exists()) {f.delete();}FileOutputStream out = new FileOutputStream(f);bm.compress(Bitmap.CompressFormat.JPEG, 90, out);out.flush();out.close();} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}}).start();}
Android开发之App拍照系统相册展示相关推荐
- Android开发之APP直播简介
随着网络技术的迅猛发展,网络直播已不再遥不可及.各行各业以直播为基础的应用场景更是如雨后春笋,遍地开花,相关数据也显示,无论是国内还是国外,市场需求层出不穷,不仅包含视频门户.视频社交.在线教育.娱乐 ...
- Android开发之APP打开小程序后小程序无法返回APP,无法打开APP,launchApp无法返回app的原因
Android打开小程序可以看我上篇文章介绍:Android打开小程序 我这边已经成功打开小程序了参数也传递过去了,现在就是无论如何点击返回APP都没有反应,也没用走微信页面WXEntryActivi ...
- Android开发之APP唤醒小程序,打开小程序,调起小程序以及传参数的实现方法(附加源码)
老套路咱们先看效果图: 可以先看下官方文档介绍:微信官方文档APP打开小程序链接 我这边打开了,上面奔溃是因为模拟器不兼容的原因: 主要讲解下打开小程序核心代码: // 填应用AppIdString ...
- android 统计app使用时间,android开发之app在线时长统计sdk开发
引言: 很多app的在线时长统计都是通过在activity的生命周期中埋点来完成的.我这里既然是封装成sdk,当然就不能这样来了.封装sdk的规则,我想大家都清楚,入参尽量少,回调尽量全,权限尽量不要 ...
- Android开发之App支付功能实现及踩坑
支付宝支付实现 1.正规支付实现 前提条件: 1. 企业或个体工商户可申请,且账号通过支付宝实名认证审核 2. 需提供真实有效的营业执照,且支付宝账户名称需与营业执照主体一致: 3. 提供APP名称或 ...
- android 控制app声音,Android底层开发之APP音量单独控制
Android底层开发之APP音量单独控制 目前Android的音乐播放软件都的音量控制都是随着系统的总Master音量变化的.想要实现和windows中一样,每个APP的媒体音量可以单独控制. 控制 ...
- android 图库分析,Android开发之ImageSwitcher相册功能实例分析
本文实例讲述了Android开发之ImageSwitcher相册功能.分享给大家供大家参考,具体如下: 简介: 1.ImageSwitcher是viewSwitcher的子类,所以ImageSwitc ...
- Android开发之旅:应用程序基础及组件
--成功属于耐得住寂寞的人,接下来几篇将讲述Android应用程序的原理及术语,可能会比较枯燥.如果能够静下心来看,相信成功将属于你. 引言 为了后面的例子做准备,本篇及接下来几篇将介绍Android ...
- Android开发之旅:HelloWorld项目的目录结构
引言 前面Android开发之旅:环境搭建及HelloWorld,我们介绍了如何搭建Android开发环境及简单地建立一个HelloWorld项目,本篇将通过HelloWorld项目来介绍Androi ...
最新文章
- python 乱序数组,list等有序结构的方法
- Android 相机,视频录制
- 计算机中丢失dinput8,修复dnfdinput8.dll
- php连接mysql学习过程中遇到的各种问题总结
- django模块导入/函数/中间件/MVC和MTV/CSRF
- 扫雷php,PHP也可以写扫雷游戏 不信看这里 PHP挖地雷
- 用ssh从ubuntu系统向ubuntu系统服务器发送文件
- bzoj 1798 5039: [Jsoi2014]序列维护(线段树)
- iPhone 6/6 Plus 出现后,如何改进工作流以实现一份设计稿支持多个尺寸?
- Jmeter中主要管理器功用
- 编译WINDOWS版FFmpeg:编译FFmpeg
- WAP开发环境的设置[IIS, APACHE, HTTPD]
- SQL的几种连接查询方式(内连接、外连接、全连接、联合查询)
- java 双向链表循环_(java实现)双向循环链表
- busybox内置tftpd服务器配置
- css实现平角切角和弧形切角
- 尚医通-OAuth2-微信登录接口开发(三十一)
- 2022/12/26总结
- OpenGL光和材质
- 以Fitbit看新智能硬件商业模式