Cosa c'è di sbagliato in questo codice?
Ho un file raw nel mio progetto (mp4 file video),
quando faccio questo, e poi ho retreive file da file di SDcard non sono identiche in modo video non può essere carico :(
Avete un altro modo per automaticly copiare un file raw per sdcard?
GrazieAndroid: copia RawFile su Sdcard (video mp4)
String FICHIER_BLOW = "blowvid4.mp4";
File f=new File(Environment.getExternalStorageDirectory(), FICHIER_BLOW);
try {
if (f.createNewFile()){
FileWriter ecrivain = new FileWriter(f);
BufferedWriter bufEcrivain = new BufferedWriter(ecrivain);
BufferedInputStream VideoReader = new BufferedInputStream(getResources().openRawResource(R.raw.blow));
while(VideoReader.available() > 0){
bufEcrivain.write(VideoReader.read());
}
bufEcrivain.close();
VideoView videoView = (VideoView) findViewById(R.id.VideoView);
MediaController mediaController = new MediaController(this);
mediaController.setAnchorView(videoView);
video =Uri.fromFile(f);
videoView.setMediaController(mediaController);
videoView.setVideoURI(video);
videoView.start();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Come da nota del Softam, potrebbe essere necessario un ulteriore flush() - sicuramente nel caso di BufferedOutputStream –