2016-04-28 5 views
-1

Ich möchte eine app.if erstellt Datenverbindung ist dann zeigen ein Toast automatisch. Sonst nicht zeigen. Ich habe viele Apps erstellt, aber ich weiß nicht, wie ich das machen soll. Ich versuche das aber nicht zu arbeiten.Wenn net Verbindung ist eine automatische Toast

public class MainActivity erstreckt Aktivität {

private WebView webView; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 


    setContentView(R.layout.main); 
    webView = (WebView) findViewById(R.id.wv); 
    if(CheckNetwork.isInternetAvailable(MainActivity.this)) 
    { 
     CookieManager cookieManager = CookieManager.getInstance(); 
     cookieManager.setAcceptCookie(true); 

     // webView = (WebView) findViewById(R.id.wv); 
     // webView.setWebViewClient(new MyWebViewClient()); 
     webView.getSettings().setJavaScriptEnabled(true); 
     webView.setWebChromeClient(new WebChromeClient() { 
       public void onProgressChanged(WebView view, int progress) { 
        // Activities and WebViews measure progress with different scales. 
        // The progress meter will automatically disappear when we reach 100% 
        MainActivity.this.setProgress(progress * 1000); 
       } 
      }); 
     webView.setWebViewClient(new WebViewClient() { 
       public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) { 
        Toast.makeText(MainActivity.this, "Oh no! " + description, Toast.LENGTH_SHORT).show(); 
       } 
      }); 

     webView.loadUrl("http://slashdot.org/"); 
    } 
    else{ 
     //no connection 
     Toast toast = Toast.makeText(MainActivity.this, "No Internet Connection", Toast.LENGTH_LONG); 
     toast.show(); 
    } 


} 



@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 
    if ((keyCode == KeyEvent.KEYCODE_BACK) && webView.canGoBack()) { 
     webView.goBack(); 
     return true; 
    } 
    else 
    { 
     finish(); 
    } 
    return super.onKeyDown(keyCode, event); 
} 

}

+1

sollten Sie Details über was OS und welchen Code es hinzufügen, und möglicherweise Ihre Frage damit markieren, sonst wird es schwierig für die Menschen, Ihre Frage zu sehen. –

+0

Bro Pleases geben mir volle Richtung. Whare ich hinter dem Code. –

Antwort

1

Hier ist der Code, ob Internet erreichbar Gastgeber:

//===================== INTERNET CHECK=========== 
     public boolean isConnectingToInternet(Context context) { 
      boolean connected = false; 
      ConnectivityManager CManager = (ConnectivityManager) context 
        .getSystemService(Context.CONNECTIVITY_SERVICE); 
      NetworkInfo NInfo = CManager.getActiveNetworkInfo(); 
      if (NInfo != null && NInfo.isConnectedOrConnecting()) { 
       try { 
        if (InetAddress.getByName("www.rameshkhatri.com").isReachable(7000)) { // you change to your website name 
         // host reachable 
         connected = true; 
        } else { 
         connected = true; 
    //     connected = false; 
         // host not reachable 
        } 
       } catch (UnknownHostException e) { 
        e.printStackTrace(); 
       } catch (IOException e) { 
        e.printStackTrace(); 
       } 
      } 
      return connected; 
     } 

Aber Sie haben Internetverbindung in AsyncTask überprüfen, weil Netzanruf wird Sei nicht auf UIThread, sonst bekommst du eine Ausnahme. Hoffe, das hilft. Fühlen Sie sich frei zu fragen, wenn Sie Fragen haben

Verwandte Themen