android调用系统相机拍照获取原图.docVIP

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
android调用系统相机拍照获取原图

android 调用系统相机拍照 获取原图 好吧,为了这个问题又折腾了一整天。之前在网上找来的方法,如果在onActivityResult中直接用data.getData 的方式来生成bitmap,其实获取的是拍照生成的缩略图!看看尺寸就知道了。如果要获取原图,还需要一番折腾(特别是对于手里这个Samsung i9000)——之前朋友在不同的机型上使用的方法在我这里一直报错,且属于那种uncaught的错误-.-? 话说回来,具体的折腾方法如下(如果不幸你看到了,希望不要“折疼了”):? 在拍照的出发按钮的点击事件中写入如下代码:? toCam.setOnClickListener new View.OnClickListener @Override? public void onClick View v //先验证手机是否有sdcard? String status Environment.getExternalStorageState ;? if status.equals Environment.MEDIA_MOUNTED try ? File dir new File Environment.getExternalStorageDirectory + /+localTempImgDir ;? if !dir.exists dir.mkdirs ;? Intent intent new Intent android.provider.MediaStore.ACTION_IMAGE_CAPTURE ;? File f new File dir, localTempImgFileName ;//localTempImgDir和localTempImageFileName是自己定义的名字? Uri u Uri.fromFile f ;? intent.putExtra MediaStore.Images.Media.ORIENTATION, 0 ;? intent.putExtra MediaStore.EXTRA_OUTPUT, u ;? startActivityForResult intent, GET_IMAGE_VIA_CAMERA ;? catch ActivityNotFoundException? e // TODO Auto-generated catch block? Toast.makeText ImpromptuActivity.this, 没有找到储存目录,Toast.LENGTH_LONG .show ; else ? Toast.makeText ImpromptuActivity.this, 没有储存卡,Toast.LENGTH_LONG .show ; dialog.dismiss ; ;? 在onActivityResult中这样折腾:? @Override? protected void onActivityResult int requestCode, int resultCode, Intent data if resultCode RESULT_OK switch requestCode case GET_IMAGE_VIA_CAMERA:? File f new File Environment.getExternalStorageDirectory ? +/+localTempImgDir+/+localTempImgFileName ;? try Uri u Uri.parse android.provider.MediaStore.Images.Media.insertImage getContentResolver , f.getAbsolutePath , null, null ; //u就是拍摄获得的原始图片的uri,剩下的你想干神马坏事请便……? catch FileNotFoundException e // TODO Auto-generated catch block e.printStackTrace ; break; super.onActivityResult requestCode, resultCode, data ; 别高兴太早了,还有关键问题:? 上面的代码只要你会用google,一般都能找来拼凑一番。但是,仅仅是这样,你还会得到未知错误……Samsung的系统相机,版式是横板的,如果你的activity恰巧是竖版的,那么获取这个回调uri的时候,很可能为空!? 原因在于,如果你没有设置版式改变的时候,activity不要调用onCreate方法!这就是要命的地方!? 设置方法其实很简单:? 1、在

文档评论(0)

peain + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档