如何在webview中登录后重定向?

时间:2016-11-08 12:06:43

标签: android redirect webview

我正在开发一个Android应用程序。我使用Webview创建UI和ajax以连接到服务器。有一个login.html文件有两个文本输入,并向服务器发送用户名和密码,如果服务器返回成功,它将重定向到index.html文件。不幸的是,它没有重定向到index.html。在Android模拟器工作,但在Android 6手机,它不起作用。在这种情况下,任何团体都知道如何在webview中重定向?

        var username = $("#username").val();
        var password = $("#password").val();
        var params = { "username": username, "password": password };
        $.getJSON("http://warehouse-abforce.rhcloud.com/api/v1/login", params, function (data) {
            document.getElementById("wait").style.visibility = 'hidden';
            if (data["success"] == "true") {
                window.localStorage.setItem("name_user", data["name"]);
                window.localStorage.setItem("username", $("#username").val());
                window.localStorage.setItem("password", $("#password").val());
                if (navigator.userAgent.match(/Android/i))
                    document.location = "index.html";
                else
                  window.location.replace("index.html");

            });

1 个答案:

答案 0 :(得分:1)

最后我找到了解决方案。 我应该将此代码添加到我的java代码中。 wv是我的webview对象。必须实现shouldOverrideUrlLoading并返回false。 现在它在版本6的移动和模拟器中都运行良好。它成功重定向到第二页。

 wv.setWebViewClient(new WebViewClient() {
     @Override
     public boolean shouldOverrideUrlLoading(WebView view, String url) {
         return false;
     }
});