本ページではAndroid Emulatorを使用したアプリとPCとのTCP/IPでの通信するためのクライアント側プログラムの作成方法を説明します。
以下の内容で説明します。
1. Eclipseを使用したクライアント側プログラムのプロジェクトの作成からコードの生成まで
2. コードの修正
3. Jarファイルの作成
名前に「main」と入力して下さい。
また「public static void main(String[] arg)」にチェックを入れて下さい。
上記の設定が終わったら「完了」ボタンを押下して下さい。
これで、「main.java」が作成されました。
作成された「main.java」を以下のように修正します。
package tcpipclient; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.Socket; public class main { public static void main(String[] args) throws IOException { String server = "127.0.0.1"; // EmulatorではIPアドレスは 127.0.0.1 で固定 int servPort = 9999; // port番号については、9999で固定 String value = "10"; // サーバーへ渡す値 try{ Socket socket = new Socket(server, servPort); socket.setSoTimeout(0); InputStream in = socket.getInputStream(); OutputStream out = socket.getOutputStream(); byte[] data = null; byte[] rcvMsg = null; data = value.getBytes(); rcvMsg = new byte[data.length]; out.write(data); // サーバにデータを送付 out.flush(); System.out.println("サーバーへ送信:" + new String(data)); // サーバからの返信を受信 int len = data.length; in.read( rcvMsg, 0, len); System.out.println("サーバーからの受信:" + new String(rcvMsg)); out.close(); socket.close(); }catch(IOException e){ System.out.println("接続エラー:" + e.getMessage()); } } }
line 12「public static void main(String[] args)」を「public static void main(String[] args) throws IOException」に変更します。
line 18で接続先IPと接続ポートを指定してクライアント側のSocketを生成します。
line 30でサーバ側へ値を送信します。
line 39でサーバ側からのデータを受信します。
以上で、クライアント側のプログラム作成は終了です。
お疲れ様でした。