2013-10-15 3 views
-1

Я хочу, чтобы мое приложение выдавало уведомление, когда wifi переходит в автономный режим.BroadcastReceiver Wifi отключен

Я выяснил извещение часть. Но я не могу понять, что такое «проверка Wi-Fi». Я читал что-то о BroadcastReceiver, но я не могу заставить его работать. Любые полезные ссылки? или пример кода? Учебники?

Заранее благодарен!

Обновлено кодом. Он работает, но мне нужно только сообщить уведомление, когда wifi переходит в автономный режим.

public class MainActivity extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) {   

    super.onCreate(savedInstanceState); 
    this.registerReceiver(this.mConnReceiver, 
      new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION)); 
    setContentView(R.layout.activity_main); 
} 

private BroadcastReceiver mConnReceiver = new BroadcastReceiver() { 
    public void onReceive(Context context, Intent intent) { 
     boolean noConnectivity = intent.getBooleanExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY, false); 
     String reason = intent.getStringExtra(ConnectivityManager.EXTRA_REASON); 
     boolean isFailover = intent.getBooleanExtra(ConnectivityManager.EXTRA_IS_FAILOVER, false); 

     NetworkInfo currentNetworkInfo = (NetworkInfo) intent.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO); 
     NetworkInfo otherNetworkInfo = (NetworkInfo) intent.getParcelableExtra(ConnectivityManager.EXTRA_OTHER_NETWORK_INFO); 

     if(currentNetworkInfo.isConnected()){ 

     }else{ 
      showNotification(); 
     } 
    } 
}; 
+1

это является дубликатом [BroadcastReceiver-когда-WiFi или-3g-сети состояние изменилось] (http://stackoverflow.com/ вопросы/10733121/broadcastreceiver-when-wifi-or-3g-network-state-changed) – Steve

+0

Я не видел этого вопроса. Во всяком случае, я обновил свой вопрос, теперь все по-другому, я думаю, ха-ха. – user2883477

+0

Тогда вам нужно начать новую тему. – Steve

ответ

1

Вы можете попробовать что-то вроде этого

In Manifest.xml 
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 

In your application Code: 

public class BroadCastSampleActivity extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    this.registerReceiver(this.mConnReceiver, 
      new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION)); 
} 

private BroadcastReceiver mConnReceiver = new BroadcastReceiver() { 
    public void onReceive(Context context, Intent intent) { 
     boolean noConnectivity = intent.getBooleanExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY, false); 
     String reason = intent.getStringExtra(ConnectivityManager.EXTRA_REASON); 
     boolean isFailover = intent.getBooleanExtra(ConnectivityManager.EXTRA_IS_FAILOVER, false); 

     NetworkInfo currentNetworkInfo = (NetworkInfo) intent.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO); 
     NetworkInfo otherNetworkInfo = (NetworkInfo) intent.getParcelableExtra(ConnectivityManager.EXTRA_OTHER_NETWORK_INFO); 

     if(currentNetworkInfo.isConnected()){ 
      Toast.makeText(getApplicationContext(), "Connected", Toast.LENGTH_LONG).show(); 
     }else{ 
      Toast.makeText(getApplicationContext(), "Not Connected", Toast.LENGTH_LONG).show(); 
     } 
    } 
}; 
} 
+0

Спасибо! Я только думаю, что это указано для сетевого подключения. Мне нужно, чтобы он реагировал только на подключение Wi-Fi. Любой совет? – user2883477

+0

код будет уведомлять, когда соединение Wi-Fi установлено. Я думаю, что это был ваш оригинальный вопрос. –

+0

Не работает. Он дает уведомление о запуске, и когда соединение wifi переключается на ON вкл или выкл. Я добавлю свой код в startpost. Мне нужно только дать уведомление, когда Wi-Fi отключится. – user2883477

Смежные вопросы