Tengo código Javascript (eliminé la mayor parte del código)
var url = // some url; __webpack_exports__["default"] = ({ filters: { // some code }, components: { // some components }, data: function data() { return { // some data, phone: '', // somde data }; }, created: function created() { var _this2 = this; window.actions = {}; window.actions.getPhoneNumber = function (number) { _this2.phone = number; }; window.Android && (window.Android.getPhoneNumber = function (number) { _this2.phone = number; }); },Y código en Android en fragmento onCreated
@SuppressLint("SetJavaScriptEnabled") private fun configureViews() { webview.webViewClient = TransfersWebViewClient(injectJs = { injectJavaScript() }) webview.settings?.javaScriptEnabled = true webview.loadUrl(startUrl) }Realice el cliente webview
class TransfersWebViewClient( private val injectJs: (() -> Unit)? = null, ) : WebViewClient() { override fun onPageFinished(view: WebView?, url: String?) { super.onPageFinished(view, url) injectJs?.invoke() } }Y la implementación de la función injectJavaScript()
private fun injectJavaScript() { webview.evaluateJavascript("actions.getPhoneNumber('33333');", null) }necesito pasar a la función javascript window.actions.getPhoneNumber = función (número) { _this2.phone = número; }; mi número de teléfono, pero no puedo hacerlo. ¿Por favor dime cómo hacer esto?