打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
[Android]在App中使用相机

[Android]在App中使用相机



如果要在自己的应用中实现拍照的功能,首先要在AndroidManifest.xml文件中添加权限:

  1. <uses-permission android:name="android.permission.CAMERA"/>  

启动相机的方法非常简单,通过intent访问MediaStore.ACTION_IMAGE_CAPTURE

  1. Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);  
  2. startActivityForResult(intent, 1);  


拍照并确认后,Activity的onActivityResult方法会被调用,在这里可以获取图片的数据。

  1. onActivityResult(int requestCode, int resultCode, Intent data) {  
  2.     if (requestCode == 1) {  
  3.         if (resultCode == RESULT_OK) {  
  4.             Bitmap bmPhoto = (Bitmap) data.getExtras().get("data");  
  5.             // You can set bitmap to ImageView here  
  6.         }  
  7.     }  
  8. }  

用这种方法,会发现获取的Bitmap很小,这其实是拍下的图片的缩略图。

如果想获取原始的大图,推荐的方法是在启动相机前先指定好图片的文件地址,通知intent,同时也保留在成员变量中。

然后在onActivityResult函数中,可以直接打开该文件。

第一段代码做如下修改:

  1. String sFileFullPath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/test.jpg";  
  2. File file = new File(sFileFullPath);  
  3. Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);  
  4. intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file));  
  5. startActivityForResult(intent, 1);  
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Android中常见Intent习惯用法
android调用摄像头拍照,从相册中选择照片并裁剪
android 多媒体和相机详解五
Android Camera开发(一)之基础知识
android图像绘制(六)(拍照或者选择本地图相册图片上传)
Android开发返回拍摄的图片
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服