首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >应用程序WebView中的动态口令检测

应用程序WebView中的动态口令检测
EN

Stack Overflow用户
提问于 2018-06-19 13:54:25
回答 2查看 1.6K关注 0票数 2

有没有办法在webview中自动检测OTP?有一个手机号。要使用动态口令进行验证,并且要在应用程序webview中检测到动态口令。

提前感谢

EN

回答 2

Stack Overflow用户

发布于 2018-06-19 14:27:27

无论何时你通过短信获得动态口令,并通过接收器通知,那么在webview中,无论你想在里面添加你的动态口令,你需要这样做吗?

代码语言:javascript
复制
String otp = "OTP_FROM_YOUR_RECEIVER";
webview.loadUrl("javascript:document.getElementById('otp_input').value = '"+otp+"';"); 

上面的代码只是一个例子,你需要根据你的要求和所有的要求进行修改。

票数 2
EN

Stack Overflow用户

发布于 2018-10-17 18:40:53

下面是Kotlin中的代码:

代码语言:javascript
复制
if (Build.VERSION.SDK_INT >= 19) {
            mWebView!!.evaluateJavascript(getString(R.string.fill_otp) + "\"$extractedOTP\";") { Log.e(TAG, it) }
        } else {
            mWebView!!.loadUrl(getString(R.string.fill_otp) + "\"$extractedOTP\";")
        }

将"fill_otp“放入字符串文件:

代码语言:javascript
复制
<string name="fill_otp">javascript: function getInputs() {
    var ary = [];
    var inputs = document.getElementsByTagName(\"input\");

    for (var i=0; i&lt;inputs.length; i++)
        {
            if (inputs[i].type.toLowerCase() == \"password\"||
            inputs[i].type.toLowerCase() == \"tel\"||
            inputs[i].type.toLowerCase() == \"number\"||
            inputs[i].type.toLowerCase() == \"text\"){

                if(!inputs[i].hidden&amp;&amp;!inputs[i].disabled){
                    ary.push(inputs[i]);
                }
            }
        }
        return ary;
    }
    var array= getInputs();
    array[0].value=</string>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50921441

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档