做项目的时候,发现直接嵌入H5网址,不能直接访问本地相册,需要用到WebViewClient,还有
自定义的registerForActivityResult方法,里面用到的是ActivityResultContracts.StartActivityForResult()(创建协议:页面跳转获取数据,和之前的startActivityForResult作用一样,会自动生成resultCode),使用的kotlin语言
用到的变量
private var mUploadMessage: ValueCallback<Uri>? = null//回调图片选择,4.4以下
private var mUploadCallbackAboveL: ValueCallback<Array<Uri>>? = null//回调图片选择,5.0以上
private var register: ActivityResultLauncher<Intent>? = null
使用WebViewClient选择文件
//能够在不同的Android版本,选择图片、视频上传
baseWebView.webChromeClient = object : WebChromeClient() {
// For Android 3.0+
fun openFileChooser(uploadMsg: ValueCallback<Uri>?) {
mUploadMessage = uploadMsg
val i = Intent(Int