Enregistrement d'une vidéo à partir d'un URL
Bonjour,
j'aimerais créer un programme qui me permette d'enregistrer un vidéo à partir d'une URL sur le path "/data/data/packagename/files/", puis le récupérer pour l'afficher.
J'ai essayé avec ce code mais un message s'affiche " le video ne peut pas etre lire"
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
public void DownloadFromUrl(String vedioURL, String fileName) { //this is the downloader method
BufferedReader reader = null;
FileOutputStream fos = null;
InputStream in = null;
try {
File dest = new File(PATHtxt+fileName);
// création de la connection
URL url = new URL(vedioURL);
URLConnection conn = url.openConnection();
System.out.println(vedioURL);
String FileType = conn.getContentType();
System.out.println("FileType : " + FileType);
int FileLenght = conn.getContentLength();
if (FileLenght == -1) {
throw new IOException("Fichier non valide.");
}
// lecture de la réponse
in = conn.getInputStream();
reader = new BufferedReader(new InputStreamReader(in));
if (dest == null) {
String FileName = url.getFile();
FileName = FileName.substring(FileName.lastIndexOf('/') + 1);
dest = new File(FileName);
}
fos = new FileOutputStream(dest);
byte[] buff = new byte[1024];
int l = in.read(buff);
while (l > 0) {
fos.write(buff, 0, l);
l = in.read(buff);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
fos.flush();
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
try {
reader.close();
} catch (Exception e) {
e.printStackTrace();
}
} |
puis le code de la recuperation :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| try
{
//////////////
VideoView view = (VideoView) Coursvedio.this.findViewById(R.id.vedio);
view.setMediaController(new MediaController(Coursvedio.this));
//setContentView(vedio);
view.setVideoPath( "/data/data/com.learning/files/ag.3gp");
view.requestFocus();
view.start();
}
catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
Log.d("erreur de chargement", e.toString());
} |
Merci.