簡體   English   中英

Android-Java-WebView >>計算頁面加載時間(如果未加載),表示有新活動

[英]Android - Java - WebView >> Count Page Loading time, if not loaded, intent new activity

WebView web;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    Bundle extras = getIntent().getExtras();  
    String uid = extras.getString("uid"); 
    web = (WebView) findViewById(R.id.webview01);
    web.setWebViewClient(new myWebClient());
    web.getSettings().setJavaScriptEnabled(true);
    web.loadUrl("http://xxx.xxx.xxx.xxx/android/login.php?uid="+uid);
                                                }

public class myWebClient extends WebViewClient  {
    @Override
    public void onPageStarted(WebView view, String url, Bitmap favicon) {
        super.onPageStarted(view, url, favicon);
                                                                        }

    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url)   {
        view.loadUrl(url);
        return true;
                                                                        }
                                                }

這是我的webview活動的代碼。 我想實現一個頁面加載功能,該功能將在調用URL時在后台計數。如果URL在5000ms內未完全加載,則下面的代碼必須自動運行。 我不知道該怎么算。

            Intent i = new Intent(MainActivity.this, InternetError.class);
            startActivity(i);

我嘗試了很多方法,但從未獲得正確的結果。 謝謝。

首先,請更改您的shouldOverrideUrlLoading實現, shouldOverrideUrlLoading在WebView上調用loadUrl ,這樣做是錯誤的。 收到回調時,URL加載正在進行中,請勿再次啟動它。

其次,要解決您的問題,您是否可以將延遲的消息發布到Handler,該消息將在所需的超時后執行您的錯誤代碼,如果WebViewClient.onPageFinished首先出現,則將其刪除?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM