0
本当に助けが必要です。 Android携帯電話のSDカードにデータ(バイト)を正しく保存しようとしています。SD-Card->値がありません
モバイルは、マイクロコントローラからBluetooth経由でデータを取得します。データはターミナルによって正しく出力されるので、明らかにJavaコードは間違っています。
これをテストするために、変数(8ビット)がインクリメントされ、このステップの後に変数の値が電話に送信されます。 作成したファイルを16進表示で読み上げると、有罪値の間に0がたくさんあります(μCが何も送信していない場合)。そして何らかの理由で、多くの値が欠落している/おそらく年表間違っている。
節約一部:
h=new Handler() {
public void handleMessage (android.os.Message msg) {
switch (msg.what) {
case RECIEVE_MESSAGE:
byte[] readBuf = (byte[]) msg.obj;
String path = "/sdcard/" + dateipfad.getText().toString() + ".txt";
Environment.getExternalStorageDirectory().getPath();
try {
File myFile = new File(path);
myFile.createNewFile();
FileOutputStream fOut = new FileOutputStream(myFile,true);
fOut.write(readBuf);
fOut.flush();
fOut.close();
} catch (Exception e) {
Toast.makeText(getBaseContext(), e.getMessage(),
Toast.LENGTH_SHORT).show();
}
break;
}
}
};
`
ご返信ありがとうございます。 本当ですか、それは問題ですか? このようにファイルストリームを作成するだけでは不十分です。 [] readBuf =(byte [])msg.obj; fOut.write(readBuf); fOut.flush(); fOut.close(); もしそうでない場合は、私はAndroidスタジオでこの正しいIDEとJAVAの非常に新しいです、なぜ正しいとこれを行う方法を説明することができますか?あなたのコード行を私の中に貼り付けるには? - > keyOfMessage? – bandschuka
ハンドラにメッセージを送信しているのは何ですか? Bluetooth経由の – confusedProgrammer
μc(クラス:2.0)。 BLE:HC06(Uart)。 https://stackoverflow.com/questions/35157297/android-bluetooth-adapter-message-handler-buffer-limit : 多分それは同じ問題がありますか? – bandschuka