2014-02-28 52 views
0

我想爲移動版本編寫一個小的webview代碼。 一切正常,但有時我無法打開鏈接。 我想shouldOverrideUrlLoading有一個錯誤。shouldOverrideUrlLoading(WebView視圖,String url)是否錯誤?

我這樣做「?mt = 1」強制移動版本的網站。

謝謝你的幫助。

最良好的祝願多米尼克

package com.webview.atmclassicparts; 

import android.os.Bundle; 
import android.app.Activity; 
import android.view.KeyEvent; 
import android.view.Menu; 
import android.webkit.WebView; 
import android.webkit.WebViewClient; 

public class MainActivity extends Activity { 

    private WebView webView; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     webView = new WebView(MainActivity.this); 
     setContentView(webView); 
     webView.getSettings().setJavaScriptEnabled(true); 
     webView.getSettings().setUserAgentString("Android 4.2.2"); 
     webView.loadUrl("http://www.***.de/index.php?mt=1"); 
     webView.setWebViewClient(new WebViewClient(){ 
      public boolean shouldOverrideUrlLoading(WebView view, String url) 
      { 
       if(!url.toLowerCase().contains("http://www.***.de")) 
       { 
        String url2 = url + "?mt=1"; 
        return true; 
       } 
      return false; 
       } 
      }); 

    } 


    @Override 
    public boolean onKeyDown(int keyCode, KeyEvent event) { 
     // Prüfen, ob wirklich Zurück gedrückt wurde und ob vorher Seiten besucht wurden 
     if ((keyCode == KeyEvent.KEYCODE_BACK) && webView.canGoBack()) { 
      webView.goBack(); 
      return true; 
     } 
     // Wenn es nicht die Zurück-Taste war oder keine Seitenhistory verfügbar ist, wird die Default- Methode ausgeführt. Meist ist dass das Beenden der Aktivität 
     return super.onKeyDown(keyCode, event); 
    } 
} 
+0

您是否記錄了if語句以查看它是否被調用? (可以肯定:當你不想包含http://www.***.de時,你想添加?mt = 1到頁面中,對吧?) – Ahmad

+0

它必須包含所有內容。 www。***。de/123?mt = 1將是正確的鏈接 – user3365415

回答

1

你不能強迫你的網站的移動版本,你忽略了這一呼籲。

webView.setWebViewClient(new WebViewClient(){ 
     public boolean shouldOverrideUrlLoading(WebView view, String url) 
     { 
      if(!url.toLowerCase().contains("http://www.***.de")) 
      { 
       String url2 = url + "?mt=1"; 
       view.loadUrl(url2); // <<--- you were missing this 
       return true; 
      } 
      return false; 
     } 
    }); 
相關問題