2012-06-05 8 views
2

J'essaie de lire une vidéo Youtube de Youtube sur certains appareils, mais ils renvoient une boîte de dialogue: "La vidéo ne peut pas être lue".Pourquoi Videoview ne peut pas lire une vidéo Youtube?

J'ai déjà lu la documentation de l'API Youtube.

J'ai un VideoView et j'ai défini la vidéo Uri comme une URL avec une extension .3pg.

Ceci est mon code:

VideoView videoView = (VideoView)this.findViewById(R.id.video); 
MediaController mc = new MediaController(this); 
videoView.setMediaController(mc); 
videoView.setVideoURI(Uri.parse("rtsp://v1.cache2.c.youtube.com/CigLENy73wIaHwmhXrOROaqgpBMYESARFEgGUgx1c2VyX3VwbG9hZHMM/0/0/0/video.3gp")); 
videoView.requestFocus(); 
videoView.start(); 

J'ai essayé d'autres vidéos et jouer correctement. Qu'est-ce que je fais mal?

+0

Quelques vidéos sont interdits de jouer sur les appareils mobiles, avez-vous essayé de jouer sur votre téléphone portable? –

Répondre

1

Si l'intégration de vidéo n'est pas votre exigence explicite, pourquoi ne commencez-vous pas simplement une intention avec l'URL de la vidéo YouTube et laissez l'OS gérer l'intention pour vous? C'est la façon la plus simple possible de lire la vidéo sur Android autant que je sache. Par exemple,

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("Your youtube URL here")); 
startActivity(intent); 

Pour plus d'informations sur Android Intentions, voir this link et vogella's tutorial

0

L'extrait suivant vous servira de guide.

Fondamentalement, vous aurez besoin setOnPreparedListener

try { 

       final VideoView videoView =(VideoView)findViewById(R.id.videoView1); 
       // Set video link (mp4 format) 
       Uri video = Uri.parse(video_url); 
       videoView.setVideoURI(video); 
       videoView.setOnPreparedListener(new OnPreparedListener() { 
        public void onPrepared(MediaPlayer mp) { 
         progressDialog.dismiss(); 
         videoView.start(); 
        } 
       }); 

      }catch(Exception e){ 
       progressDialog.dismiss(); 
       System.out.println("Video Play Error :"+e.getMessage()); 
      } 
+0

désolé, cela ne fonctionne pas pour moi. Je veux juste vous lire la vidéo tube en vue vidéo, mais je ne peux pas jouer de cette façon. Pouvez-vous m'aider ? –

0

vous devez lancer une intention avec une URL YouTube et laissez le système d'exploitation gérer. C'est-à-dire, je ne pense pas que vous pouvez intégrer des vidéos YouTube directement dans vos activités, bien que j'adorerais avoir tort.

Questions connexes