红米手机无法调用相机

在一款公司项目中,遇到红米手机无法调用相机的问题,经过测试其他品牌手机均正常工作。最初认为是系统差异导致,但后来发现其他社交应用可以成功调用相机。经过一番查找和代码分析,发现在第三方应用中存在一些不常见的实现方式,如使用ContextMenu代替Dialog,以及复杂的类调用。最终,通过反编译APK找到问题源头,发现photoUri值为null,揭示了问题所在。
摘要由CSDN通过智能技术生成

         公司项目中,有个拍照设置头像功能,某天项目经理跑来跟我说,一台红米测试机上调用不了相机。

         我一惊,连忙在小米1S、2S、三星note、华为、魅族上跑了一圈,发现都是好好的。然后看了下代码,感觉没任何问题。

          只好告诉他,这是系统差异,不要在意这些细节。


 上段调用相机的源码(不知道他们从哪拷来的)

		Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
		SimpleDateFormat timeStampFormat = new SimpleDateFormat(
				"yyyy_MM_dd_HH_mm_ss");
		String filename = timeStampFormat.format(new Date());
		ContentValues values = new ContentValues();
		values.put(Media.TITLE, filename);
		try {
			photoUri = getActivity().getContentResolver().insert(
					MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values); 
			intent.putExtra(MediaStore.EXTRA_OUTPUT, photoUri);
			getActivity().startActivityForResult(
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值