本文实例为大家分享了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, null));          ContentResolver contentResolver = this.getContentResolver();          Bitmap bitmap = BitmapFactory.decodeStream(contentResolver.openInputStream(uri));          ivCardBack.setImageBitmap(bitmap);        }      } catch (FileNotFoundException e) {        e.printStackTrace();      }    }  }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多相关文章

  1. Nginx系列教程(六)| 手把手教你搭建 LNMP 架构并部署天空网络电影
  2. Android读取文本文件中内容的方法
  3. 获取Android系统中全部正在运行的程序
  4. Android触摸事件传递机制系列详解
  5. Android之照相机的使用
  6. android 7.0 手机调用手机相机、相册常见的两个崩溃:FileUriExpos
  7. Android(安卓)LockScreen .
  8. 国外著名 Android(安卓)开发者的信息
  9. Android(安卓)解决getColor()或getDrawable()方法过时的办法

随机推荐

  1. Afinal 0.3 发布,Android快速开发框架
  2. context、getApplicationContext()
  3. Android仿微信SwitchButton
  4. Android音频系统之AudioFlinger(二)
  5. Android动态全屏与退出全屏
  6. Android-代替GLSurfaceView的GLTextureVi
  7. Android(安卓)原代码编后的目录分析
  8. android RecyclerView局部刷新
  9. Github中的Android时间,日期选择器
  10. Android(安卓)cookies正确的更新方式