지금 장비에서 블루투스로 데이터를 따서 텍스트로 데이터 저장하는 프로그램을 작성 중 입니다.
개발도 중 외부 저장소 권한도 매니패스트에 작성하였고
저장하는 부분의 소스를 보면
try
{
String path = Environment.getExternalStorageDirectory()+"/serial";
File file = new File(path);
if( !file.exists() ) // 원하는 경로에 폴더가 있는지 확인
file.mkdirs();
file = new File(file, "data.txt");
FileOutputStream fOut = new FileOutputStream(file, true);
OutputStreamWriter osw = new OutputStreamWriter(fOut);
//---write the string to the file---
osw.write(str);
osw.flush();
osw.close();
//cont.sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://"+path)));
//cont.sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.parse("file://"+ //path+ "/EEGdata"+".txt")));
}
catch (Exception ioe)
{
ioe.printStackTrace();
}
이런식으로 작성되어있고 데이터가 시리얼로 들어오면 어펜드 되는 형식입니다.
근데 문제는 저장은 되는데 휴대폰에서 만보이고 폰을 재부팅하기전까지 컴퓨터로 파일이 확인이 안된다는 것입니다.
뭔 짓이든 다해봤고 그중 제일 희망이있는건 미디어 스캔 문제인듯한데 보니까 안드로이드는 그림 음악 파일 외부저장소에 저장시 미디어스캔을 해야한느거같더군요...
그래서 미디어스캔부분도 한번 작성해봤는데 이도 소용이 없었습니다.
물론 상업목적인 아닌 프로그램이라 굳이 컴퓨터로 데이터를 안뽑아도되서 컴퓨터로 바로 확인 가능하지 않아도 되나
그래도 꼭 집고 넘어가고싶네요
떠돌아다니는 기트허브 소스는 대부분 써본거같네요...
그리고 이유는 모르겠지만 폰 초기화 이후에는 몇번은 파일이 재부팅 없이바로 컴퓨터로 텍스트 확인이 가능 합니다...
그 이후는 재부팅해야 보이고요.. 이 또한 미디어 스캔 문제인 건지...