android代码调用相机,Android如何调用系统相机拍照
本文实例为大家分享了Android调用系统相机拍照的具体代码,供大家参考,具体内容如下
/**
* 调用系统相机
*/
private void takePhoto() {
Uri uri = null;
if (which_image == FRONT_IMAGE) {
frontFile = new File(getSDPath() +"/test/front_" + getDate() + ".jpg");
uri = Uri.fromFile(frontFile);
} else if (which_image == BACK_IMAGE) {
backFile = new File(getSDPath() + "/test/back_" + getDate() + ".jpg");
uri = Uri.fromFile(backFile);
}
Intent captureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
captureIntent.putExtra(MediaStore.Images.Media.ORIENTATION,0);
captureIntent.putExtra(MediaStore.EXTRA_OUTPUT,uri);
captureIntent.putExtra("return-data",true);
startActivityForResult(captureIntent,TAKE_PHOTO);
}
/**
* 获取系统时间
*
* @return
*/
public static String getDate() {
Calendar ca = Calendar.getInstance();
int year = ca.get(Calendar.YEAR); // 获取年份
int month = ca.get(Calendar.MONTH); // 获取月份
int day = ca.get(Calendar.DATE); // 获取日
int minute = ca.get(Calendar.MINUTE); // 分
int hour = ca.get(Calendar.HOUR); // 小时
int second = ca.get(Calendar.SECOND); // 秒
String date = "" + year + (month + 1) + day + hour + minute + second;
return date;
}
/**
* 获取SD path
*
* @return
*/
public String getSDPath() {
File sdDir = null;
boolean sdCardExist = Environment.getExternalStorageState()
.equals(android.os.Environment.MEDIA_MOUNTED); // 判断sd卡是否存在
if (sdCardExist) {
sdDir = Environment.getExternalStorageDirectory();// 获取跟目录
return sdDir.toString();
}
return null;
}
@Override
protected void onActivityResult(int requestCode,int resultCode,Intent data) {
super.onActivityResult(requestCode,resultCode,data);
if (requestCode == TAKE_PHOTO && resultCode == RESULT_OK) {
// Bundle bundle = data.getExtras();
// Bitmap bitmap = (Bitmap) bundle.get("data");
// if (which_image == FRONT_IMAGE) {
// ivCardFront.setImageBitmap(bitmap);
// } else if (which_image == BACK_IMAGE) {
// ivCardBack.setImageBitmap(bitmap);
// }
try {
if (which_image == FRONT_IMAGE) {
Uri uri = Uri.parse(MediaStore.Images.Media.insertImage(getContentResolver(),frontFile.getAbsolutePath(),null,null));
ContentResolver contentResolver = this.getContentResolver();
Bitmap bitmap = BitmapFactory.decodeStream(contentResolver.openInputStream(uri));
ivCardFront.setImageBitmap(bitmap);
} else if (which_image == BACK_IMAGE) {
Uri uri = Uri.parse(MediaStore.Images.Media.insertImage(getContentResolver(),backFile.getAbsolutePath(),null));
ContentResolver contentResolver = this.getContentResolver();
Bitmap bitmap = BitmapFactory.decodeStream(contentResolver.openInputStream(uri));
ivCardBack.setImageBitmap(bitmap);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。
总结
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
小编个人微信号 jb51ccc
喜欢与人分享编程技术与工作经验,欢迎加入编程之家官方交流群!
android代码调用相机,Android如何调用系统相机拍照相关推荐
- android 代码加view,Android中将View添加至窗口的源码分析
本文主要内容是讲解一个视图View或者一个ViewGroup对象是如何添加至应用程序窗口中的.下文中提到的窗口可泛指我们能看到的界面,包括一个Activity呈现的界面(我们可以将之理解为应用程序窗口 ...
- android代码关闭数据库,android – 我应该如何正确打开和关闭我的数据库
我有一个应用程序,它将一些数据存储在SQLite数据库中.此外,我在我的应用程序中进行了大量查询和重新查询.我在其中有大约15个活动.并且所有人都使用数据库来查询数据. 但我正在做的是在每个活动中打开 ...
- android 代码打开权限,android开发权限询问的示例代码
现在基于信息安全问题,特别是版本是23以上权限越严格. 特别是拍照,读,写权限 一般权限允许过,下次就不用询问了的,所以很多应用都喜欢在首页或者启动页直接询问,不允许的就用不了1.下面给出封装好的类, ...
- android代码说明文档,android:label说明
文章目录 1. 说明 android:label 用于app 在切换activity的时候,自动更换左上角的显示 2. 代码架构 3. String.xml 字符串资源文件My Application ...
- android 代码签名apk,[Android]混淆代码后生成带签名的apk
Android从2.3的SDK开始,将ProGuard混淆代码的功能加入了进来. 我们可以从android sdk的tools目录下看到有一个proguard目录.说明具有了代码混淆的功能. 至于如何 ...
- Android代码混淆方法,Android 代码混淆零基础入门
内容提要 本篇文章主要有三个部分,让读者读完后能自己写规则混淆项目 对Android代码怎么开启混淆做一个简单的介绍. 对混淆规则做一个简单介绍: 在混淆过后Crash日志反推代码工具retrace. ...
- android代码查找图像,Android平台上利用opencv进行图像的边沿检测
原标题:Android平台上利用opencv进行图像的边沿检测 近开始接触opencv for Android,从网上down了图像的边沿检测的代码. 测试图片: 在Android2.3.1模拟器上跑 ...
- Android代码混淆处理,android代码混淆解决方案
以下包含了常见的基本代码与一些三方框架的混淆方案. ##########################基本混淆参数###################### # 代码混淆压缩比,在0~7之间,默认 ...
- android 代码 卸载app,Android在一个app中安装并卸载另一个app的示例代码
Android在一个app中安装并卸载另一个app 1.在app→src→main下新建文件夹asserts,将准备安装的apk文件放在asserts内 2.在app→src→main→res下新建文 ...
- android 代码设置圆角,Android中用Shape实现圆角和局部圆角
本文讲解如何实现布局边框的部分圆角 大家可能都知道圆角实现其实很简单, 在drawable文件夹下新建xml文件加入以下代码 情景1: 四个角均为圆角 android:shape="rect ...
最新文章
- 国行版HomePod售价2799元,本周五发售
- c语言判断s1是否大于s2,C语言程序设计_复习资料一.doc
- 云计算架构下的CRM
- y7000p内存是一个16还是8+8_选择困难症:手握16万,该尝鲜高尔夫8还是抄底奥迪A3?...
- 【数据结构与算法】之深入解析“字符串相乘”的求解思路与算法示例
- 理解tcp关闭连接中的time_wait状态
- php 和bootstrap,bootstrap4和bootstrap3的区别是什么
- (39)FPGA四种常用逻辑门(与非门)
- java parallel.for作用_“Parallel.For”for Java?
- play framework anorm orm 化构想
- 汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。
- CorelDRAWX4的VBA插件开发(三)VBA的必用基础知识
- rinetd端口转发工具
- jsp + servlet 复习(C01)
- Java多线程导出Excel表格, 100w数据量
- 编程思想-编程范式-编程思想是一组世界观和方法论-(初识范式——程序王国中的世界观与方法论)...
- 大力呼吁国内Fil厂商利用IPFS技术赋能实体经济,实现数据安全存储,已十分重要且紧迫了
- 如何用cmd命令进入mysql
- 项目一 国家电力项目思路总结
- 通报批评!严重学术不端!涉及10所高校,共计14人!基金委公布今年第一批科研不端案例...