Машина Android нет в сетиAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Машина Android нет в сети

Сообщение Anonymous »

У меня проблема с запуском сетевой службы, когда мое приложение подключается к сети Wi -Fi.
Я получаю следующее исключение, < /p>

java.net.SocketException: socket failed: ENONET (Machine is not on the network)< /code> в методе openport () Bellow < /p>

broadcastreceiver < /strong> < /p>

@Override
public void onReceive(Context context, Intent intent) {

String action = intent.getAction();

if (WifiManager.NETWORK_STATE_CHANGED_ACTION.equals(action)) {

NetworkInfo networkInfo = intent.getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);

if (networkInfo.getState() == NetworkInfo.State.CONNECTED) {
welcomeService = new BroadcastService(context, "Welcome");
Log.i(TAG, "onReceive: SUPPLICANT-STATE ---> Connected");
//do something
if (!serviceRegistered) {
welcomeService.registerService();
serviceRegistered = true;
}
}

if (networkInfo.getState() == NetworkInfo.State.DISCONNECTED) {
Log.i(TAG, "onReceive: SUPPLICANT-STATE ---> Disconnected");
//do something
unRegisterService();
}
}

}

public void unRegisterService() {
if (serviceRegistered && welcomeService != null) {
welcomeService.unregisterService();
serviceRegistered = false;

}
}
< /code>

Broadcastservice < /strong> < /p>

public void registerService() {
NsdServiceInfo serviceInfo = new NsdServiceInfo();
serviceInfo.setServiceName(mServiceName);
serviceInfo.setServiceType("_http._tcp.");
serviceInfo.setPort(openPort());

mNsdManager = (NsdManager) mContext.getSystemService(Context.NSD_SERVICE);

mNsdManager.registerService(serviceInfo, NsdManager.PROTOCOL_DNS_SD, mRegistrationListener);
}

private int openPort() {
try{
// Line that throws the exception
return new ServerSocket(0).getLocalPort();
}catch (IOException ioe){
Crashlytics.logException(ioe);
ioe.printStackTrace();
return 0;
}
}
< /code>

Этот приемник вещания работает только при демонстрации основной деятельности. И он отлично работает на первом заезде, но когда я меняю сеть Wi -Fi, это происходит. Мир помощи будет очень ценить.

Подробнее здесь: https://stackoverflow.com/questions/404 ... he-network
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»