当前位置: 移动技术网 > 移动技术>移动开发>Android > Android 调用系统相机失败解决方案

Android 调用系统相机失败解决方案

2018年11月01日  | 移动技术网移动技术  | 我要评论

android 调用相机失败解决方案。

这里我就不详细介绍了直接贴代码:
在拍照按钮的回调中加入如下代码:

intent takepictureintent = new intent(mediastore.action_image_capture);
uri imguri = createimguri();
//uri imguri = uri.parse("file:///" + environment.getexternalstoragedirectory().getpath() + "/vege/temp.jpg");
takepictureintent.putextra(mediastore.extra_output, imguri);
startactivityforresult(takepictureintent, 1);

其中 createimguri 函数是由一个文件路径生成一个 uri ,具体 uri 例子在下面注释中给出。在当前 activity 中实现下面函数:

    @override
    protected void onactivityresult(int requestcode, int resultcode, intent data) 
    super.onactivityresult(requestcode,resultcode,data);
        if (activity_camera_full_code == requestcode){
            if (result_ok == resultcode){
                //其中照片会被存储到 上面 uri 所对应的文件中
            }
        }
    }

坑1:必须给到相机权限:

androidmanifest.xml 中加入<uses-permission android:name="android.permission.camera">,最坑的是 还要求动态申请权限,这个网上有很多例子。

坑2:上文中 uri 所对应的文件,如果其所在的文件夹不存在的话,是无法保存文件的,关键是不报错,需要自己手动 makedirs 一下。

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网