Bluetooth 経由でデバイスを組み込みチップに接続する Android アプリケーションを作成しています。Palm Pilot に既に存在するプログラム (C で記述) を基に設計をモデリングしています。コードを実行するために Bluetooth チャットの例を使用していますが、スタックしてしまいました。私はまだコーディングの世界全体にかなり慣れていないので、少し混乱しています。
次のコードを C から Java に変換したい....
SrmReceive(portId,&c,1,(t*5L*Sec)/1000L,&err)
ここで私が抱えている唯一の問題は、3 番目のパラメーターです。は、パーム ドキュメントに記載されているように を1
表し、型はです。number of bytes to receive
UInt32
Bluetooth チャットの例のコードには、データを読み取るための次の関数があります...
public void run() {
Log.i( TAG, "BEGIN mConnectedThread" );
buffer = new byte[1024];
int bytes;
// Keep listening to the InputStream while connected
while( true ) {
try {
// Read from the InputStream
bytes = mmInStream.read( buffer );
// Send the obtained bytes to the UI Activity
mHandler.obtainMessage( BtHelperHandler.MessageType.READ, bytes, buffer).sendToTarget();
} catch ( IOException e ) {
Log.e( TAG, "disconnected", e );
sendErrorMessage( 1 );
break;
}
}
}
run()
読み取る特定のバイト数のパラメーターを持つようにメソッドを変更したいと考えています。どうしようか少し迷っています。私が考えていた...
public void run( int size ) {
buffer = new byte[size];
...
}
しかし、それは私には正しくないように思えます。バイトの定義を混同しているように感じます。ばかげているように聞こえるかもしれませんが、私はまだこの情報に十分な自信がありません。UInt32
Javaには同等の型がないため、aをJavaに変換するのは混乱します。知っている人がいたら教えてください。