Android соединения HTTP

голоса
17

Кто-нибудь может сказать мой, почему это не работает в Android эмулятор? С помощью браузера я имею доступ и сервер является внутренним. Все, что я могу думать о том, что я пропускаю некоторые конфигурации на моем приложение, таким образом он может получить доступ к сетевому уровню.

try {
    InetAddress server = Inet4Address.getByName(thehost);
    //Doesn't work either
    //or InetAddress server2 = Inet4Address.getByAddress(new String(192.168.1.30).getBytes());

    if(server.isReachable(5000)){
        Log.d(TAG, Ping!);
    }

    Socket clientsocket = new Socket(server, 8080);
} catch (UnknownHostException e) {
    Log.e(TAG, Server Not Found);
} catch (IOException e) {
    Log.e(TAG, Couldn't open socket);
}

Выдает UnknownHostException

благодаря

Задан 14/01/2009 в 11:11
источник пользователем
На других языках...                            


2 ответов

голоса
30

Что касается конфигурации идет, только настройки вы должны должны получить доступ к Интернету из вашего приложения является разрешением INTERNET, включено, добавив следующую строку за пределами тегов приложений в вашем приложении Manifest.

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

Таким образом, манифест будет следовать этой общей конструкции

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.android.apis">    
  <uses-permission android:name="android.permission.INTERNET" />
  <application 
    android:name="MyApplication"    
    android:label="@string/application_title"
    android:icon="@drawable/my_icon">
    [ .. Your Activities go here ]
  </application>
</manifest>
Ответил 14/01/2009 в 11:58
источник пользователем

голоса
2

Он все еще может не работать из-за тайм-аута. Так как вам нужны права суперпользователя, чтобы отправить пакет ICMP и реализацию в isReachable будет использовать медленную версию TCP ЭХА. Chekcout в JavaDoc.

Ответил 02/10/2009 в 12:23
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more