直播平台搭建源码,调用系统相册实现多选图片上传

直播平台搭建源码,调用系统相册实现多选图片上传

1、首先需要给webview的WebChromeClient设置以下代码,才可以实现h5与Android交互选取图片

 

1
<br>private ValueCallback<Uri> mValueCallbackUri;<br>private ValueCallback<Uri[]> mValueCallbackUris;<br>this.setWebChromeClient(new WebChromeClient() {<br>            // For Android < 3.0<br>            public void openFileChooser(ValueCallback<Uri> uploadMsg) {<br>                if (mValueCallbackUri != null) {<br>                    mValueCallbackUri.onReceiveValue(null);<br>                    mValueCallbackUri = null;<br>                }<br>                mValueCallbackUri = uploadMsg;<br>                showOptions();<br>            }<br>            //For Android 3.0 - 4.0<br>            public void openFileChooser(ValueCallback<Uri> uploadMsg, String acceptType) {<br>                if (mValueCallbackUri != null) {<br>                    mValueCallbackUri.onReceiveValue(null);<br>                    mValueCallbackUri = null;<br>                }<br>                mValueCallbackUri = uploadMsg;<br>                showOptions();<br>            }<br>            // For Android > 4.1.1<br>            public void openFileChooser(ValueCallback<Uri> uploadMsg, String acceptType, String capture) {<br>                if (mValueCallbackUri != null) {<br>                    mValueCallbackUri.onReceiveValue(null);<br>                    mValueCallbackUri = null;<br>                }<br>                mValueCallbackUri = uploadMsg;<br>                showOptions();<br>            }<br>            // For Android > 5.0支持多张上传<br>            @Override<br>            public boolean onShowFileChooser(WebView webView,<br>                                             ValueCallback<Uri[]> uploadMsg,<br>                                             FileChooserParams fileChooserParams) {<br>                if (mValueCallbackUris != null) {<br>                    mValueCallbackUris.onReceiveValue(null);<br>                    mValueCallbackUris = null;<br>                }<br>                mValueCallbackUris = uploadMsg;<br>                showOptions();<br>                return true;<br>            }<br>        });<br> 

2、点击h5页面设置的<input type="file" name="pic" accept="image/*">,就会调用到Android webview设置的openFileChooser或者onShowFileChooser

3、然后在openFileChooser或者onShowFileChooser中调用打开相册的代码即可

1)方法一:打开相册,并且只支持选择单张图片

 

1
<br>Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);// 调用<br>activity.startActivityForResult(intent, TYPE_GALLERY);<br> 

 

或者

 

1
<br>   Intent intent = new Intent();<br>   intent.setType("image/*");<br>   intent.setAction(Intent.ACTION_GET_CONTENT);<br>   activity.startActivityForResult(Intent.createChooser(intent, "Select Picture"), TYPE_GALLERY);<br> 

 

2)方法二:打开相册,并且支持选择多张图片(Android 5.0+才支持),只需在上述代码基础上增加以下代码即可

 

1
<br>intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);

 

 以上就是直播平台搭建源码,调用系统相册实现多选图片上传, 更多内容欢迎关注之后的文章

 

posted @   云豹科技-苏凌霄  阅读(60)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
历史上的今天:
2022-06-06 在线直播系统源码,用户登录时获取到用户已有的账号信息
2022-06-06 短视频app制作,各个程序里常见的首页轮播图
2022-06-06 短视频平台源码,开屏后的广告引导页
点击右上角即可分享
微信分享提示