2013-03-11 6 views
1

Je souhaite écrire le code permettant de lire une vidéo lorsqu'un utilisateur clique sur un bouton. Je n'arrive pas à afficher la vidéo. Lorsque je clique sur le bouton pour jouer, l'émulateur cesse de fonctionner.Android VideoView ne fonctionne pas

public class Video extends Activity{ 

private static final String MOVIE_URL = "http://www.youtube.com/watch?v=XtYzTxydKmk&list=PL33CD04942E3B59AF&index=3"; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.video_layout); 

    VideoView video = (VideoView) findViewById(R.id.videoHK); 
    Uri HKvideo = Uri.parse(MOVIE_URL); 
    video.setMediaController(new MediaController(this)); 
    video.setVideoURI(HKvideo); 
    video.start(); 
    video.requestFocus(); 
} 

Pour le bouton je

Button videoButton = (Button) findViewById(R.id.btnVideo); 
    videoButton.setOnClickListener(new OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      Intent video = new Intent(AboutHK.this, Video.class); 
      startActivity(video); 
     } 
    }); 

Répondre

1
private String MOVIE_URL = "http://www.youtube.com/watch?v=XtYzTxydKmk&list=..."; 

Donc, au début, quand vous voulez jouer creux de la vidéo VideoView à partir de YouTube dans le téléphone, cette chaîne comme Uri est pas pris en charge et il ne ne fonctionne pas . Vous avez besoin de RTSP Link.

Voici explanation et il y a le guide how to convert youtube links to RTSP.

Si vous voulez lire la vidéo avec Uri classique si vous devez le faire via Intent:

Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.youtube.com"); 
startActivity(i); 

Mais je vous recommande de lire