0

Java サーバーと Android クライアントの単純なプログラムを開発しています。Android クライアントを Java サーバーに接続しようとすると、常に UnknownHostException が発生します。実際のデバイスでプログラム全体をテストするエミュレーターを使用していません。

Android クライアント

public void testWifi(){
    String serv= Context.WIFI_SERVICE;
            WifiManager wifi = (WifiManager)getSystemService(serv);

           if(!wifi.isWifiEnabled())
           {
                Intent btIntent= new Intent(WifiManager.ACTION_PICK_WIFI_NETWORK);
        startActivityForResult(btIntent,1);
       }

        boolean isWifi;
        NetworkInfo cur;
        Context con;
        ConnectivityManager conManager;
    do
    {
            con=getApplicationContext();
    conManager = ConnectivityManager)con.getSystemService(Context.CONNECTIVITY_SERVICE);
    cur = conManager.getActiveNetworkInfo();
    isWifi = (cur != null);
    try
    {
        Thread.sleep(2000);
    }
    catch(Exception ex){}
    }while(!isWifi);

    String address = getIpAddress();
    String toastText = "Connection is esablished to" + address; 
    Toast t = Toast.makeText(getApplicationContext(), address, Toast.LENGTH_LONG);
    t.show();
    TextView ss;
    try
    {

        Socket s = new Socket(address,5000);//What i am doing wrong here.?
        InputStreamReader input = new InputStreamReader(s.getInputStream());
        BufferedReader reader = new BufferedReader(input);
        String msg= reader.readLine();
        reader.close();
        ss = (TextView)findViewById(R.id.temp);
        ss.setText(msg);
    }

    catch(Exception ex){
        t = Toast.makeText(getApplicationContext(),ex.toString() , Toast.LENGTH_LONG);
        t.show();
}
}
4

1 に答える 1

0

getIpAddress()存在しない、または少なくとも見つからないホスト名を返すようです。

このエラー メッセージは、電話機がを数値の IP アドレスにString解決できないことを意味するだけです。address

于 2013-08-16T18:43:24.787 に答える