#java #android #kotlin #webview
Вопрос:
У меня в приложении есть веб-представление, в котором мне нужно выбрать цифровую подпись. Я не могу выбрать файл в папке выбора файла, хотя можно выбрать файл в других местах этого веб-представления. Возможно, вам нужно какое-то дополнительное разрешение?
binding.webViewHrm.webChromeClient = object : WebChromeClient() {
override fun onShowFileChooser(
webView: WebView?,
filePathCallback: ValueCallback<Array<Uri>>?,
fileChooserParams: FileChooserParams?
): Boolean {
startActivityForResult(
fileChooserParams?.createIntent()
?.setType("*/*"), CHOOSE_FILE_REQUEST_CODE
)
this@HrmWebViewFragment.filePathCallback = filePathCallback
return true
}
}
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
when (requestCode) {
CHOOSE_FILE_REQUEST_CODE -> {
if (resultCode == Activity.RESULT_OK) {
filePathCallback!!.onReceiveValue(
WebChromeClient.FileChooserParams.parseResult(
resultCode,
data
)
)
filePathCallback = null
}
}
}
}