2011-08-08 13 views
2

私のアプリはインターネットに接続する必要があるので、ユーザーが接続しているかどうかをチェックします。しかし、それはアクティビティが開始された後にのみ、ユーザーがアクティビティを開始した後に接続がないかどうかをどのように検出できるかをチェックします。ユーザーがインターネットを無効にしているかどうかを確認する方法?

@Override 

    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     getWindow().requestFeature(Window.FEATURE_NO_TITLE); 
     setContentView(R.layout.main); 

     ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 
     NetworkInfo info = cm.getActiveNetworkInfo(); 
     if (info != null) { 
      if (!info.isConnected()) { 
      } 
     } 
     else { 
      Intent intent = new Intent(hello.this, connectionerror.class); 
      intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
      startActivity(intent); 
      hello.this.finish(); 
     } 

を.....私のアプリを他のコードはここに続け........

+1

接続コードをメソッド内に配置しようとしましたか?そうすれば、コードを再利用せずにいつでも呼び出すことができます。 –

答えて

3

あなたが登録できますHERE

は、活動が開始したとき、私は接続を検出するために使用するWHATコードですandroid.net.conn.CONNECTIVITY_CHANGEの場合はBroadcastReceiverです。インテントを見て(どのネットワークが変更されたか)、またはConnectivityManagerで再確認することができます。

+0

あまり良い質問ではなく、いい答えです。 CONNECTIVITY_CHANGE放送は非常に便利ですね。ありがとう –

+0

@リッチダグラスどのように私はそれを行うのですか? – Eljas

+0

これは非常に遅い答えかもしれませんが、誰かが接続をチェックするためにブロードキャストレシーバーを使用したい場合、これは役に立つリンクかもしれません:http://android-er.blogspot.com/2011/01/monitor-wifi- status-and-information.html –

関連する問題