Мое приложение не отправляет данные Wi-Fi на нуге или позже - PullRequest
0 голосов
/ 26 января 2019

Несколько лет назад я написал код в Android Studio для связи через Wi-Fi со встроенными устройствами. Этот код хорошо работал на всех устройствах Android до Android 6, но на устройствах с Android 7 или более поздней версии кажется, что данные не передаются по Wi-Fi.

Я публикую упрощенную часть кода. В «onClickSend» при нажатии соответствующей кнопки приложение должно отправить 2 байта. Сокет создан в классе "ClientThread". И onClickSend, и ClientThread находятся внутри MainActivity. «ClientThread» инициализируется в «onCreate (Bundle saveInstanceState)» следующим образом

new Thread(new ClientThread()).start();

Внутри Manifest.xml Я дал следующие разрешения:

android:name="android.permission.INTERNET"  
android:name="android.permission.ACCESS_NETWORK_STATE"

   public void onClickSend(View view){

   try {
       OutputStream out = mySocket.getOutputStream();

       out.write(byte1);
       out.write(byte2);
       out.flush();
    }

   catch (UnknownHostException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    catch (Exception e) {
        e.printStackTrace();
   }
}

class ClientThread implements Runnable {
    @Override
    public void run() {

        try {
            InetAddress serverAddr = InetAddress.getByName(ip_address);
            mySocket = new Socket(serverAddr, port);

        } catch (UnknownHostException e) {

        } catch (IOException e) {

        }
    }
}

Ваши комментарии могут помочь мне понять, что происходит не так. Спасибо.

...