意图相同的活动

时间:2017-03-30 05:26:36

标签: android

我有一个问题。我的程序假设转到不同的IP地址,里面有不同的名字。然后它将从网站上取出HTML代码。如果它与正确的名称不对应,它将跳到下一个URL。

以下是从用户获取用户名并使用webview访问网页的代码。

    name = getIntent().getExtras().getString("username");
    URL = getIntent().getExtras().getInt("URL"); //URL passed from previous activity as 99



            webview.setWebViewClient(new WebViewClient() {
                @Override
                public void onPageFinished(WebView view, String url) {
                    webview.loadUrl("javascript:window.HtmlViewer.showHTML" +
                            "('<html>'+document.getElementsByTagName('html')[0].innerHTML+'</html>');");



                }

               /* public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {

                    Toast.makeText(getApplicationContext(), "Your Internet Connection May not be active Or " + error, Toast.LENGTH_LONG).show();
                    URL = URL +1 ;
                    Intent intent = new Intent (lightingpair.this, lightingpair.class);
                    intent.putExtra ("username", name) ;
                    intent.putExtra ("URL", URL);
                    startActivity (intent) ;

                }*/
            });

            webview.loadUrl("http://192.168.0." + URL + "/pair");
            Toast.makeText(getApplicationContext(), String.valueOf(URL) , Toast.LENGTH_LONG).show();

这是javascript的代码

class MyJavaScriptInterface {

    private Context ctx;

    MyJavaScriptInterface(Context ctx) {
        this.ctx = ctx;
    }

    String nhtml;
    @JavascriptInterface
    public void showHTML(String html) {

        nhtml = html ;

      runOnUiThread(new Runnable() {
            @Override
            public void run() {

                if (nhtml.indexOf(name) > 0) {
                    Intent intent = new Intent(lightingpair.this, Lighting.class);
                    intent.putExtra("username", name);
                    intent.putExtra("url", URL);
                    startActivity(intent);
                } else {

                    URL = URL + 1;
                    Intent intent = new Intent(getApplicationContext(),lightingpair.class);
                    intent.putExtra("username", name);
                    intent.putExtra("URL", URL);
                    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                    intent.putExtra("EXIT", true);
                    startActivity(intent);
                }
            }

但是,在3或4个网页扫描后它会停止,有时会扫描更多。 想知道是否有更有效的方法去不同的IP地址来收集HTML代码。

0 个答案:

没有答案