私はアンドロイドアプリで作業しています。アプリのボタンを押すと、PCのサーバーリストにキーストロークが送信されます。ボタンが急に押されたときに、出力が「吃音」になるという問題は、すべてうまくいきます。クライアント上で急速に押すと、サーバーが「吃音」し、時には単に応答しなくなることがあります。私が使用しているタラは非常に簡単です。シンプル?"stutter"を使わずにアンドロイドデバイスからPCにキーストロークを送信
サーバー側:
ServerSocket welcomeSocket = new ServerSocket(6789);
while(true)
{
Socket connectionSocket = welcomeSocket.accept();
BufferedReader inFromClient = new BufferedReader(new InputStreamReader(connectionSocket.getInputStream()));
keyin = inFromClient.readLine();
robby.translateAndForward(keyin);
}
}
catch (Exception ex)
....クライアントで
public class ImageBoundListener implements OnTouchListener {
private ImageView view;
private static PadClient client;
上のタッチイベントハンドラー
@Override
public boolean onTouch(View view, MotionEvent event) {
int action = event.getAction() & MotionEvent.ACTION_MASK;;
if (client==null)
{
client=new PadClient();
}
if (action==MotionEvent.ACTION_DOWN)
{
client.sender("A");
}
Integer actionCode = action & MotionEvent.ACTION_MASK;
Log.d(actionCode.toString()," Event occured on: "+view.getTag());
return true;
}
}
実際のセンド・実装
try{
Socket clientSocket = new Socket("192.168.1.104", 6789);
DataOutputStream outToServer = new DataOutputStream(clientSocket.getOutputStream());
System.out.println("Writing bytes to the server..");
outToServer.writeBytes(send);
clientSocket.close();
}
のはここから行くことがわからない...
感謝を。私はこれを別の方向に持ち帰り、ホイールを再発明しないことにしました。私はhttp://code.google.com/p/kryonet/(BSDライセンスサーバークライアント、PCとアンドロイドで動作します)を使用するように見えます。 –