我们在开发中经常遇到一些功能需要调取系统相机拍照获取图片,或者有的时候直接打开图库获取图片,那我们怎么获取呢,今天分享下,

第一步,打开相机

 public static final int CAMERA = 1025;// 拍照的请求码public static final int ALBUM = 1026;// 选择图片的请求码
/** 设置从相机获取图片,返回图片路径*/public static String getImgFromCamra(Context context) {String state = Environment.getExternalStorageState();File mFolder;String mImgName;// 先检测是不是有内存卡。if (state.equals(Environment.MEDIA_MOUNTED)) {mFolder = new File(Environment.getExternalStorageDirectory(),"bCache");// 判断手机中有没有这个文件夹,没有就新建。if (!mFolder.exists()) {mFolder.mkdirs();}// 自定义图片名字,这里是以毫秒数作为图片名。mImgName = System.currentTimeMillis() + ".jpg";Uri uri = Uri.fromFile(new File(mFolder, mImgName));// 调用系统拍照功能。打开箱机Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);context.startActivityForResult(intent, CAMERA);return mFolder + File.separator + mImgName;} else {Toast.makeText(context, "未检测到SD卡", Toast.LENGTH_SHORT).show();return null;}}

第二步,打开相册

/** 设置从本地相册获取图片*/public static void getImgFromAlbum(Context context) {// 调用本地图库。Intent intent = new Intent(Intent.ACTION_PICK,android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);context.startActivityForResult(intent, ALBUM);}

以上两步我们就是打开系统的相机和相册,打开之后拍照成功,或者选中文件之后怎么接收呢,请看以下:

第三步 调用,获取回调地址

 @Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.bt_photograph_phone:// 从手机选择UtilView.getImgFromAlbum(PhotoGraph.this);break;case R.id.bt_photograph_paizhao:// 拍照photoLocalPath = UtilView.getImgFromCamra(PhotoGraph.this);break;}}@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {switch (requestCode) {case CAMERA:// 拍照if (resultCode == RESULT_OK ) {// 已经获取到图片路径了//photoLocalPath即为路径 已经获取到}break;case ALBUM:// 图库选择if (resultCode == RESULT_OK && data != null) {// 获取本地相册图片。Uri uri = data.getData();}break;}}

注:以上是但图片,多图片选择请点击下方

1.多图片选择 请点击使用Album框架

2.多图片选择 请点击使用PictureSelector框架框架

以上就是我们的使用方法,使用起来还是很简单的,小伙伴们如有不明白的地方,或者是写的不好的地方,欢迎留言

Android 调用系统打开相机,打开相册获取图片路径相关推荐

  1. Android相机、相册获取图片显示并保存到SD卡

    如题,这个需求本不是一个很复杂的过程,但是却存在一些隐患,我也是最近在项目中碰到这个问题,将Android通过相机或相册获取图片并最终显示在界面上做了一个小研究,现将一些结果和附上的一个Demo叙述如 ...

  2. iOS 从相机或相册获取图片并裁剪

    /load user image - (void)UesrImageClicked { UIActionSheet *sheet; // 判断是否支持相机 if([UIImagePickerContr ...

  3. android相册路径地址,Android拍照和相册获取图片路径

    /** *调用系统相机 */ public voidstartCamera() { Intent intent =newIntent(MediaStore.ACTION_IMAGE_CAPTURE); ...

  4. android跳转到相册需要权限,Android打开相册获取图片路径

    一.获得图片路径 当我们通过Intent打开相册,获取图片后,在onActivityResult回调中会得到图片的Uri. 但是Uri无法直接获得图片的路径.如果你曾经直接操作过android里的数据 ...

  5. Android 相机 或者 相册 获取图片裁剪 适用6.0/7.0

    随着Android 的版本更新迭代.本来以前代码很简单的打开相册或者相机  获取图片裁剪 给Unity3D 使用的过程 挺简单的.但是随着 Android 版本的 更新 和 安全 的加强 .有几点 和 ...

  6. Android调用系统默认打印机并反射获取打印任务状态

    Android4.4通过PrintManger调用系统默认打印服务的默认打印机进行打印任务,并通过反射调用PrintManager的getPrintJob方法获取打印任务状态.不说太多,直接上代码.第 ...

  7. android调用系统播放器后返回的图片旋转了

    调用系统拍照后,在某些手机上可能会出现返回的照片旋转了90°/180°的情况,很头疼 使用下面两个工具方法,可以把bitmap方向调整到正确位置 /** * 读取图片属性:旋转的角度 * @param ...

  8. Android 调用系统原生相机拍照并储存到指定位置

    Android 6.0(API 23以下,不包括23)以下,无动态授权模块, 权限: <uses-permission android:name="android.permission ...

  9. android 调用 系统 相机 摄像机 拍照 拍视频

    主要内容如下: 系统现有相机应用的调用 系统现有相机拍摄照片 获取系统现有相机拍摄的图片 系统现有相机拍摄图片Demo 系统现有相机拍摄视频 系统现有相机拍摄视频Demo 系统现有相机应用的调用 对于 ...

最新文章

  1. 让开源解读“甲骨文”--RHEL5.3部署安装Oracle Database10g Release2
  2. Linux varnish代理服务器安装以及健康检查
  3. ZJOI2019 Day2 游记
  4. OpenvSwitch — 操作实践
  5. Interview Q A 小明一家5口如何过桥
  6. Axure中的原型如何导出成为HTML5源码
  7. 【技术学习】一次Node.js站点渗透
  8. 现金流量表的编制方法及程序
  9. 3.递归猴子吃桃问题
  10. 【PAT甲级 前导0,排序】1069 The Black Hole of Numbers (20 分) C++ 全部AC
  11. 计算机的组成 —— 耳机与音响
  12. paip.invalid conversion from FormWdg* to SOCKET {aka unsigned int}
  13. 直播 | SDCC 2017 人工智能技术实战线上峰会
  14. 胖大海和罗汉果可以同泡吗
  15. 解读2018:13家开源框架谁能统一流计算?
  16. colab 跑 deformable-detr 记录:
  17. 使用python判断一个数是否为素数
  18. Android错误提示及解决方案(持续更新)
  19. 西南大学计算机与信息科学学院奖学金,西南大学“玉辉奖学金”成立暨颁奖仪式顺利举办...
  20. 【正版软件】激活Windows 7报0xC004F035错误

热门文章

  1. Stream流(3)
  2. SpringBoot上传图片问题
  3. Android开发学习总结(一)——搭建最新版本的Android开发环境
  4. V3S-Zero TF卡无法引导Linux启动问题
  5. 学校计算机考试插u盘,一种带USB插头的计算机考试防U盘作弊装置的制作方法
  6. 公司用的 MySQL 团队开发规范,太详细了,建议收藏!
  7. 3.18 使用橡皮擦工具制作图像合成效果 [原创Ps教程]
  8. Ubuntu18.04 常用软件推荐
  9. 如何用Phaser实现一个全家福拼图H5
  10. win7 桌面图标显示不正常