Я написал приложение для Android, которое требует передачи большого количества данных через сеть. Чтобы сохранить счета-фактуры, я добавил в свою конфигурацию переключатель, который должен переключать приложение в режим только «wlan only».Как проверить наличие определенного типа сети в Android?
Unluckily я не смогло реализовать правильную проверку для беспроводной локальной сети в моем приложении, основная идея была добавление необходимых разрешений через
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
в моем манифесте (который должен быть достаточен для этой цели) и реализована простой метод, к которому я обращаюсь в своей деятельности:
protected boolean checkForNetwork(Context context, boolean wlanOnly) {
// check via ACCESS_NETWORK_STATE
ConnectivityManager manager = (ConnectivityManager) context.
getSystemService(Context.CONNECTIVITY_SERVICE);
if (!wlanOnly) {
return manager.getActiveNetworkInfo().isConnected();
} else {
// hmm...
}
}
Я довольно не уверен, что происходит в // hmm ... part.