首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用ACTION_IMAGE_CAPTURE解决bug的好方法

用ACTION_IMAGE_CAPTURE解决bug的好方法
EN

Stack Overflow用户
提问于 2011-06-30 06:24:00
回答 1查看 3.4K关注 0票数 5

我面临的问题是: ACTION_IMAGE_CAPTURE意图的行为取决于硬件制造商。

我认为,从照片库中插入相机获取照片的最佳方法必须如下所示

代码语言:javascript
复制
Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT,
    android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, CAPTURE_IMAGE_REQUEST);

然后在onActivityResult中获取uri

代码语言:javascript
复制
switch (requestCode) {
    case CAPTURE_IMAGE_REQUEST: {
         if(resultCode == Activity.RESULT_OK) {
              Uri uri = intent.getData();// content uri of photo in media gallery
              //do something with this
         }
         break;
    }

但我知道,这在很多设备上行不通;此外,我还发现了几种不同的相机应用程序行为场景:

  • 有些设备有此事件的错误,因此无法获取完整大小的照片,而且只能使用公共目录中的tmp文件获取512 in宽照片。
  • 一些设备(包括我的设备)将拍摄的照片插入图片库,但不返回Uri。(getData()返回null,意图附加只有布尔键‘指定-数据’,值=真)如果我试图通过公共的诱惑文件获取照片,那么照片将被插入到图片库和tempfile中。
  • 有些设备不会将拍摄的照片插入图片库--我必须手动完成
  • 我不知道,但可能会有其他不同的

因此,是否有最佳做法来管理这些问题,以涵盖广泛的设备和制造商?

在这种情况下,我需要从相机拍照,把它插入画廊,然后得到的照片在画廊里。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-30 06:35:29

其中一部分已得到答复:

我觉得你不应该再查其他案子了。Google和Android监控这些问题,所以报告它们,希望它们能被修复。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6530743

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档