2016-04-28 1 views
-1

Je souhaite créer une application. Si la connexion de données est activée, un toast s'affiche automatiquement. Sinon ne pas montrer. Im créé de nombreuses applications, mais je ne sais pas comment faire cela. J'essaie mais ne fonctionne pas.Lorsque la connexion au réseau est activée, un toast est automatiquement affiché

MainActivity public class étend l'activité {

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

vous devriez ajouter des détails sur ce système d'exploitation et quel code il est, et éventuellement étiqueter votre question, sinon il sera difficile pour les gens de voir votre question. –

+0

Bro plaies me donner pleine direction. Whare j'ai passé le code. –

Répondre

1

Voici le code wether Internet accessible à l'hôte:

//===================== 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; 
     } 

Mais vous avez vérifier la connexion Internet à AsyncTask parce que l'appel de réseau ne pas être sur UIThread, sinon vous obtenez une exception. J'espère que cela aide. n'hésitez pas à demander si vous avez des questions