webapp中安卓 ios 只调用拍照方法
工作开心,问题多多啊。(o(╥﹏╥)o)
webapp新问题,解决一个在上传图片中点击时直接调用相机不能调用相册。(这啥操作,懵逼ing)
我只记得capture这个属性可以直接调用 相机,录像等功能 但是要去掉multiple这个可以多选的属性,第一次尝试已失败告终,不过这个在ios可以使用,那么要解决的就是安卓的问题了。
不会怎么办,问百度巴巴,疯狂百度模式开始,依旧没有找到解决办法,那就只能摆脱安卓大佬写个方法了。嘿嘿嘿
下面是你们喜爱的代码示例
前端调用方法
因为在ios中这样可以支持只调用相机,所以跟安卓约定改变accept中的值来使app直接打开相机
1.修改前
<input type="file" capture="camera" ng-model="vm.avatarFile1" ngf-accept="'image/*'">
2.修改后
<input type="file" capture="camera" ng-model="vm.avatarFile1" ngf-accept="'bugdd/*'">
安卓壳代码
这段代码的意思大概是 获取到accept中 的参数,判断是否含有他需要的那个参数。如果含有就调用相机方法,如果没有就调用相机和相册的方法。
@Override
public boolean onShowFileChooser(WebView webView, ValueCallback<Uri[]> filePathCallback, WebChromeClient.FileChooserParams fileChooserParams) {
String[] acceptTypes = fileChooserParams.getAcceptTypes();
mOpenFileChooserCallBack.showFileChooserCallBack(filePathCallback, acceptTypes);
return true;
}
public interface OpenFileChooserCallBack {