2016-05-21 4 views
-1

Я делаю клиентское серверное приложение, где я использую открытый сокет на стороне клиента и сервера, чтобы установить соединение.Почему сервер/клиентский сокет перестает работать

Client (Android телефон):

try { 
     InetAddress serverAddr = InetAddress.getByName(serverIp); 
     socket = new Socket(serverAddr, PORT); 
    } 

Сервер:

 sS = new ServerSocket(PORT); 
     sO = new Socket(); 
     sO = sS.accept(); 

Оба имеют то же значение PORT, и я уверен, что IP-адрес сервера является правильным. Он работал в прошлом месяце, но когда я попробовал его вчера, и он больше не работает.

Если я снова клонирую его и все еще не сработал (от безопасной фиксации, где он работал).

У меня есть разрешение Интернет:

<uses-permission android:name="android.permission.INTERNET" /> 

Я не знаю, если это что-то делать с Gradle:

android { 
compileSdkVersion 21 
buildToolsVersion '23.0.2' 

defaultConfig { 
    applicationId "com.example.fran.dibcel" 
    minSdkVersion 15 
    targetSdkVersion 21 
    versionCode 1 
    versionName "1.0" 
} 
buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
} 
dependencies { 
compile fileTree(include: ['*.jar'], dir: 'libs') 
compile 'com.android.support:appcompat-v7:22.0.0' 
compile 'com.googlecode.json-simple:json-simple:1.1.1'} 
+0

Вы получаете исключение при создании сокета? – Lino

+0

Какая ошибка вы получаете? – Acapulco

+1

'sO = новый Socket();'. Удалите эту строку. Он ничего не обслуживает. И это сбивает с толку. – greenapps

ответ

0

Наконец, был брандмауэр окон. Я отключил его, а затем я открыл соединение сокета без каких-либо проблем.

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