-3

私は、IP aa.aaa.a.aaa を使用して、Amazon インスタンスのポート xxxx でアプリケーションを実行しています。現在、次を使用して telnet 経由で接続できます。

telnet aa.aaa.a.aaa xxxx

これは、接続されているクライアントからメッセージを受信し、そのメッセージを他のすべてのクライアントにブロードキャストするチャット アプリケーションであり、これまでのところ telnet でうまく機能します。

Android アプリケーション内からこのアプリケーションに接続する方法を知りたいです。これは私がこれまでAndroidで試したことです

public String connect () {
        Scanner scan;
        HttpURLConnection urlConnection = null;

        try {
            try {
                URL url = new URL("http://54.214.9.156:8189");
                urlConnection = (HttpURLConnection) url.openConnection();
                InputStream in = new BufferedInputStream(urlConnection.getInputStream());
                scan = new Scanner(in);

                boolean done = false;
                while(!done){
                    if (scan.hasNextLine()){
                        String line = scan.nextLine();
                        if (line.trim().equals("BYE")) done=true;
                        return line;
                    }
                }

            }finally {
                urlConnection.disconnect();
            }
        } catch (Exception e) {}
        return "";
    }

動作しませんが、私のデバッガーは何も教えてくれません。誰でもこれを行う方法を教えてもらえますか? ありがとう NB: チャット アプリケーションは、サーバー ソケットを使用して Java で記述されています

4

1 に答える 1

0

マニフェストに次の行があることを確認してください。

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

また、メイン スレッドでネットワーク リクエストを作成している場合は、AsyncTask(推奨) または Thread/Handler を使用して、ネットワーク操作をバックグラウンド スレッドに移動する必要があります。Android システムのそれ以降のバージョンでは、メイン スレッドでネットワーク呼び出しを実行しようとすると、例外がスローされます。

于 2013-06-03T21:20:54.507 に答える