大佬教程收集整理的这篇文章主要介绍了android – 在Nexus S和三星Galaxy S I9000上的ACTION_IMAGE_CAPTURE方向问题,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); takenPhoto = new File(uploadsFolder,getNewPicFilename()); intent.putExtra(MediaStore.EXTRA_OUTPUT,Uri.fromFile(takenPhoto)); startActivityForResult(intent,SHOOT_MEDIA_requEST_CODE);
问题是Nexus S和Galaxy S设备默认情况下,ACTION_IMAGE_CAPTURE意图的单一方向是横向.如果我以纵向模式拍摄照片,则该照片将被存储到旋转的“拍摄照片”文件中.
这个问题似乎只出现在三星Galaxy S设备(Galaxy S和Nexus S)上,我尝试的其他设备根据图像拍摄时的方向进行自动旋转.
我将非常感谢有关该问题的任何帮助.
但是,在我的Nexus S上,该文件仍然可以获得正确的EXIF数据.所以你可以得到这样的方向:
ExifInterface exif = new ExifInterface("filepath"); exif.getAttributeInt(ExifInterface.TAG_ORIENTATION,ExifInterface.oRIENTATION_NORMAL);
然后你可以使用ContentResolver.update添加正确的ORIENTATION数据.您只需将ExifInterface方向选项转换为旋转度数.
您的另一个选择是创建自己的活动来操作相机硬件并记录文件.然后你要跟踪旋转和保存捕获的图像时将值写入元数据.由于相机应用程序是Android的一部分,您可以复制&@L_197_10@它没有太多的痛苦.
以上是大佬教程为你收集整理的android – 在Nexus S和三星Galaxy S I9000上的ACTION_IMAGE_CAPTURE方向问题全部内容,希望文章能够帮你解决android – 在Nexus S和三星Galaxy S I9000上的ACTION_IMAGE_CAPTURE方向问题所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。