直播平台搭建源码,调用系统相册实现多选图片上传
直播平台搭建源码,调用系统相册实现多选图片上传
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); |
以上就是直播平台搭建源码,调用系统相册实现多选图片上传, 更多内容欢迎关注之后的文章
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
2022-06-06 在线直播系统源码,用户登录时获取到用户已有的账号信息
2022-06-06 短视频app制作,各个程序里常见的首页轮播图
2022-06-06 短视频平台源码,开屏后的广告引导页