0

私は Android デバイス Samsung GT OS 2.2.1 を持っています

WIFI経由でローカルホスト(Windows 8 PC)にHTTPリクエストを送信することに成功しました

しかし、速度を考慮して、「USB経由でWindows 8 PCのローカルホストにHTTPリクエストを送信する方法」も学びたいです

これはWIFI経由で送信するための私のコードです

URL url = null;
        try {
            /*Wireless LAN adapter Local Area Connection*/
        url = new URL("http://192.168.xxx.xxx/MySkripsi/testWriteFile.php");
        String body = "";
        body += "text=" + messageTujuan;

        byte[] bytes = body.getBytes();
        HttpURLConnection conn = null;
        conn = (HttpURLConnection) url.openConnection();
        conn.setDoOutput(true);
        conn.setRequestMethod("POST");
        conn.setRequestProperty("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");
        OutputStream  out = conn.getOutputStream(); 
        out.write(bytes);
        out.close();
        int status = conn.getResponseCode();

        if (status != 200) {
            Toast.makeText(con, "status = " + status , 0).show();
        }
        else
        {
            InputStream is = conn.getInputStream();

            BufferedReader reader = new BufferedReader(new InputStreamReader(is));
            StringBuilder sb = new StringBuilder();
            String line = null;
            try {
                while ((line = reader.readLine()) != null) {
                    sb.append((line + "\n"));
                }
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
                try {
                    is.close(); 
                } catch (IOException e) {
                    e.printStackTrace(); 
                }
            }
            Toast.makeText(con, "Return Nya = " +sb.toString(), 0).show();
            Log.v("TEST" , "Return Nya = " + sb.toString());
            tv.setText(sb.toString());
            is.close();
        }

    } catch (Exception e) {
        Toast.makeText(this, e.toString() + "#" + e.getMessage(), 0).show();
    }

このコード、結果を教えてください

しかし、WIFIをオフにするたびに表示されます

「java.net.SocketException: ネットワークに到達できません」

だから私はいくつかのウェブサイトでそれを調べました、そして私はこれを見つけました

http://www.codeproject.com/Articles/191930/Android-Usb-Port-Forwarding

印刷画面はこちら

http://imgur.com/QmHToQU

私のAndroidデバイスのUSBトンネルにも、「サービスが実行されています、接続されています!」と表示されます。

ただし、上記と同じコードを使用しますが、次の点を除きます。

url = new URL("h**p://127.0.0.1:80/MySkripsi/testWriteFile.php");

結果は「java.netConnectException :/127.0.0.1:80 - 接続が拒否されました」

ファイアウォールに問題があると思いますが、修正方法がわかりません

だから私の質問は

Androidとサーバーの間の通信に使用できる他の方法はありますか?

サーバーとしてローカルホスト(Windows 8 PC)にデータを送信し、 USB経由でサーバーの応答を受信するには、Androidデバイスが本当に必要です

ありがとう..

4

2 に答える 2