ITPub博客

首页 > 应用开发 > Java > 直播网站源码通过webview修改网页内容

直播网站源码通过webview修改网页内容

原创 Java 作者:zhibo系统开发 时间:2020-07-07 14:12:56 0 删除 编辑
有个需求,通过webview在打开第三方H5页面的时候,把卡号设置到第三方页面的卡号输入框。代码完整如下:
package com.example.study2020;
 
import androidx.appcompat.app.AppCompatActivity;
 
import android.os.Bundle;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
 
public class MainActivity extends AppCompatActivity {
    String cardNo="6226090213148888";
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //获得控件
        WebView mWebView = (WebView) findViewById(R.id.wbPay);
        WebSettings webset = mWebView.getSettings();
        webset.setJavaScriptEnabled(true);// 表示webview可以执行服务器端的js代码
        webset.setJavaScriptCanOpenWindowsAutomatically(true);//允许js弹出窗口
        //访问网页
        //系统默认会通过手机浏览器打开网页,为了能够直接通过WebView显示网页,则必须设置
        mWebView.loadUrl("http://192.168.195.37:8092/springboot/unpay");
        mWebView.setWebViewClient(new WebViewClient() {
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                //使用WebView加载显示url
                view.loadUrl(url);
                //返回true
                return true;
            }
 
            @Override
            public void onPageFinished(WebView view, String url) {
                super.onPageFinished(view, url);
                String jsFunction = "javascript:function setCardNo() {" +
                        //"alert('123');" +
                        "document.getElementById('cardNo').value='"+cardNo+"';}";
                 //注入 js函数
                view.loadUrl(jsFunction);
                //调用 js函数
                view.loadUrl("javascript:setCardNo();");
 
            }
        });
    }
}


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/69978258/viewspace-2702946/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2020-07-02

  • 博文量
    599
  • 访问量
    230385