1. <span style="font-size:18px;">package com.demo;
  2. import java.io.BufferedOutputStream;
  3. import java.io.File;
  4. import java.io.FileNotFoundException;
  5. import java.io.FileOutputStream;
  6. import java.io.IOException;
  7. import java.util.Calendar;
  8. import java.util.Locale;
  9. import android.app.Activity;
  10. import android.content.Intent;
  11. import android.graphics.Bitmap;
  12. import android.os.Bundle;
  13. import android.os.Environment;
  14. import android.provider.MediaStore;
  15. import android.text.format.DateFormat;
  16. import android.util.Log;
  17. import android.view.View;
  18. import android.view.View.OnClickListener;
  19. import android.widget.Button;
  20. import android.widget.ImageView;
  21. import android.widget.Toast;
  22. public class MyCameraActivity extends Activity {
  23. /** Called when the activity is first created. */
  24. private Button button;
  25. @Override
  26. public void onCreate(Bundle savedInstanceState) {
  27. super.onCreate(savedInstanceState);
  28. setContentView(R.layout.main);
  29. button = (Button) findViewById(R.id.button);
  30. button.setOnClickListener(new OnClickListener() {
  31. @Override
  32. public void onClick(View v) {
  33. // TODO Auto-generated method stub
  34. Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
  35. startActivityForResult(intent, 1);
  36. }
  37. });
  38. }
  39. @Override
  40. protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  41. // TODO Auto-generated method stub
  42. super.onActivityResult(requestCode, resultCode, data);
  43. if (resultCode == Activity.RESULT_OK) {
  44. String sdStatus = Environment.getExternalStorageState();
  45. if (!sdStatus.equals(Environment.MEDIA_MOUNTED)) { // 检测sd是否可用
  46. Log.i("TestFile",
  47. "SD card is not avaiable/writeable right now.");
  48. return;
  49. }
  50. String name = new DateFormat().format("yyyyMMdd_hhmmss",Calendar.getInstance(Locale.CHINA)) + ".jpg";
  51. Toast.makeText(this, name, Toast.LENGTH_LONG).show();
  52. Bundle bundle = data.getExtras();
  53. Bitmap bitmap = (Bitmap) bundle.get("data");// 获取相机返回的数据,并转换为Bitmap图片格式
  54. FileOutputStream b = null;
  55. //???????????????????????????????为什么不能直接保存在系统相册位置呢????????????
  56. File file = new File("/sdcard/myImage/");
  57. file.mkdirs();// 创建文件夹
  58. String fileName = "/sdcard/myImage/"+name;
  59. try {
  60. b = new FileOutputStream(fileName);
  61. bitmap.compress(Bitmap.CompressFormat.JPEG, 100, b);// 把数据写入文件
  62. } catch (FileNotFoundException e) {
  63. e.printStackTrace();
  64. } finally {
  65. try {
  66. b.flush();
  67. b.close();
  68. } catch (IOException e) {
  69. e.printStackTrace();
  70. }
  71. }
  72. ((ImageView) findViewById(R.id.imageView)).setImageBitmap(bitmap);// 将图片显示在ImageView里
  73. }
  74. }
  75. }
  76. </span>
 

调用android系统相机拍照并保存的更多相关文章

  1. android调用系统相机拍照并保存在本地

    import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import j ...

  2. 调用系统相机拍照,保存照片,调用系统裁剪API对照片处理,显示裁剪之后的照片

    package com.pingyijinren.test; import android.annotation.TargetApi; import android.app.Notification; ...

  3. Android下载图片/调用系统相机拍照、显示并保存到本地

    package com.example.testhttpget; import java.io.BufferedReader; import java.io.FileNotFoundException ...

  4. Android 调用系统相机拍照保存以及调用系统相册的方法

    系统已经有的东西,如果我们没有新的需求的话,直接调用是最直接的.下面讲讲调用系统相机拍照并保存图片和如何调用系统相册的方法. 首先看看调用系统相机的核心方法: Intent camera = new ...

  5. 【踩坑速记】MIUI系统BUG,调用系统相机拍照可能会带给你的一系列坑,将拍照适配方案进行到底!

    一.写在前面 前几天也是分享了一些学习必备干货(还没关注的,赶紧入坑:传送门),也好久没有与大家探讨技术方案了,心里也是挺痒痒的,这不,一有点闲暇之时,就迫不及待把最近测出来的坑分享给大家. 提起An ...

  6. Android7.0调用系统相机拍照、读取系统相册照片+CropImageView剪裁照片

    Android手机拍照.剪裁,并非那么简单 简书地址:[我的简书–T9的第三个三角] 前言 项目中,基本都有用户自定义头像或自定义背景的功能,实现方法一般都是调用系统相机–拍照,或者系统相册–选择照片 ...

  7. Android 调起系统相机拍照

    概述 最近在看 nanChen 写的图片选择器 ImagePicker,感觉写得很不错,也打算把从中学到的东西写下来.很多时候,遇到一个好的框架能够降低开发成本这是好事.但是也要去了解其内部具体实现逻 ...

  8. Android6.0机型上调用系统相机拍照返回的resultCode值始终等于0的问题

    版权声明:本文为博主原创文章,未经博主允许不得转载. 正常情况下调用系统相机拍照: 如果拍照后点击的是“确定”图标,返回的resultCode = -1(Activity.RESULT_OK): 如果 ...

  9. Android调用系统相机拍照保存照片很小解决方案

    保存图片小的一般操作步骤: 1. 调用系统相机 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); startActivityFo ...

随机推荐

  1. bzoj2338数矩形(rectangle)

    数矩形(rectangle) 计算几何 把所有点两两连线,把这些线按长度排序,再按中点排序 能组成矩形的线一定是连续的 最坏就是所有点围成一个圆,交于圆心 复杂度O(可以过) 要用叉积,不然会被卡精 ...

  2. Robot Framework通过Python SMTP进行email收发测试。

    工作中需要对发送的邮件进行过滤,方法基本属于ACL控制,即查看“源/目的”邮件地址,邮件标题,邮件正文,邮件附件等进行过滤. 所以需要先模拟一下用Python能否达到邮件Client,Server的功 ...

  3. codevs1690 开关灯

    1690 开关灯 USACO  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond 题解       题目描述 Description YYX家门前的街上有N( ...

  4. java写文件的基本操作

    import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; import java.io.IOExce ...

  5. jquery 获取 checkbox 的 checked 状态问题

    这个郁闷了,今天写这个功能的时候发现了问题,上网找了好多资料对照,更加纠结... 事实证明一切,自己测试了N遍,发现网上的说法和自己以前的理解都是错的,不知道大家有没发现. 下面来看看网上大多资料的说 ...

  6. python(5)-- 函数

    python 函数  定义:函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.  使用好处:函数能提高应用的模块性,和代码的重复利用率. 分类:(1)python 内建函数:pytho ...

  7. JavaScript内部是这样运行

    编译阶段 词法分析(Lexing) 这个过程会将由字符组成的字符串分解成(对编程语言来说)有意义的代码块,这些代 码块被称为词法单元(token). 简单举个例子:c = b - a 转换为 NAME ...

  8. Codeforces 920D Tanks

    题目链接 题意 有 \(n\) 个容积无限的水缸,初始时水量为\(a_1,a_2,...,a_n\),有一把容积为\(k\)的勺子,可以从一个水缸中舀水倒入另一个水缸中.问能否给出操作序列,使得最终某 ...

  9. [java]编程的智慧(转)

    编程是一种创造性的工作,是一门艺术.精通任何一门艺术,都需要很多的练习和领悟,所以这里提出的“智慧”,并不是号称一天瘦十斤的减肥药,它并不能代替你自己的勤奋.然而由于软件行业喜欢标新立异,把简单的事情 ...

  10. 常见的 Git 命令:

    开始一个工作区(参见:git help tutorial) clone 克隆一个仓库到一个新目录 init 创建一个空的 Git 仓库或重新初始化一个已存在的仓库 在当前变更上工作(参见:git he ...