我想创建一个可以同时播放youtube视频和本地视频的应用程序。我使用surfaceView的原因是我可以在后台将视频作为音频播放,以便用户可以与其他应用程序进行交互。我跳过了后台服务代码,因为它没有使发布时间太长。
我的代码在存储在移动设备中的本地视频上运行正常,但无法播放youtube视频。
surfaceView = (SurfaceView) findViewById(R.id.surfaceView);
player = new MediaPlayer();
surfaceHolder = surfaceView.getHolder();
surfaceHolder.addCallback(this);
public void doPlayVideo( ){
try {
player.setDataSource(this, Uri.parse(path));
player.prepareAsync();
player.setOnPreparedListener(this);
} catch (IOException e) {
e.printStackTrace();
}
}
@Override
public void onPrepared(MediaPlayer mp) {
player.start();
player.setLooping(true);
}
@Override
public void surfaceCreated(SurfaceHolder holder) {
player.setDisplay(surfaceHolder);
doPlayVideo();
}