调用Android中的WebView javascript函数 [英] Call javascript function in Android WebView

查看:123
本文介绍了调用Android中的WebView javascript函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

晚上好。

我有WebView功能和按钮就可以了一项活动。 Android的SDK 17.网站是不是我的,所以我不能反正改变它。我需要通过Android的按钮点击做JS code。

我试图做到这一点

 公共类RostelecomLoginActivity延伸活动{

的WebView web视图;
字符串URL;

@覆盖
保护无效的onCreate(包savedInstanceState){
    super.onCreate(savedInstanceState);
    的setContentView(R.layout.activity_rostelecom_login);

    意图webIntent = getIntent();
    最终的字符串URL = webIntent.getStringExtra(URL);

    web视图=(web视图)findViewById(R.id.webView1);
    webView.getSettings()setJavaScriptEnabled(真)。
    。webView.getSettings()setSaveFor​​mData(真正的);
    。webView.getSettings()setSavePassword(真正的);

    Button按钮=(按钮)findViewById(R.id.button1);
        button.setOnClickListener(新OnClickListener(){

        公共无效的onClick(视图v){
            webView.addJavascriptInterface(新的对象(){
                @JavascriptInterface
                公共无效测试(){
                    Log.d(JS,测试);
                }
            },机器人);
            webView.loadUrl(JavaScript的:(函数(){。的document.getElementById('马')点击();})());
        }
    });

    webView.loadUrl(URL);

}}
 

不过,这并不做任何事情。 我怎么能叫我JS吧?

感谢你。

解决方案

  webview.loadUrl(JavaScript的:函数名(\+论据+\));
 

Good evening.

I have an activity with WebView and Button on it. Android sdk 17. Website isn't mine, so I can't change it anyway. I need to do js code by android button click.

I'm trying to do this

public class RostelecomLoginActivity extends Activity {

WebView webView;
String url;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_rostelecom_login);

    Intent webIntent = getIntent();
    final String url = webIntent.getStringExtra("url");

    webView = (WebView) findViewById(R.id.webView1);
    webView.getSettings().setJavaScriptEnabled(true);
    webView.getSettings().setSaveFormData(true);
    webView.getSettings().setSavePassword(true);

    Button button = (Button) findViewById(R.id.button1);
        button.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {
            webView.addJavascriptInterface(new Object(){
                @JavascriptInterface
                public void test(){
                    Log.d("JS", "test");
                }
            },"Android");
            webView.loadUrl("javascript:(function(){document.getElementById('mA').click();})()");
        }
    });

    webView.loadUrl(url);

}}

But it doesn't do anything. How can I call my js right ?

Thank you.

解决方案

webview.loadUrl("javascript:functionName(\"" + argument + "\")");

这篇关于调用Android中的WebView javascript函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆