モバイルデバイスのシリアルプログラムに2つの問題があります。
- InputStream.available()は、ドキュメントに従って常に0を返します。データが文字列ではなくファイルである可能性があるため、DataInputStreamを使用できません。InputStreamでread()を呼び出すだけで、バイトが反対側に存在しない場合はIO操作がブロックされます。また、入力データのサイズもわかりません。では、データがポートで利用可能かどうか、および利用可能なデータのサイズはどのくらいかを確認するにはどうすればよいですか?
- ハイパーターミナルを使用してシリアルポートをテストしていますが、モバイルはataやatdなどのATコマンドにのみ応答しています。したがって、「hello」のような文字列は無視され、私のアプリはそれを見ることができません。これは本当ですか?または私は何かが欠けていますか?データをアプリに表示するにはどうすればよいですか?
何か提案はありますか?コードスニペットは多分?