我想在Android视频中播放youtube视频。它的工作正常,但我的问题是youtube视频花了太多时间来缓冲和播放,如何解决这个问题。相同的应用程序在IOS中运行良好。但我只在android中遇到这个问题。这是我的代码,只需检查一下。
public class Videoview extends Activity {
VideoView videoView;
private static ProgressDialog progressDialog;
// JSON node keys
private static final String TAG_VIDEO = "url";
//private String path= video;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.videoview);
videoView =(VideoView)findViewById(R.id.video_player);
progressDialog = ProgressDialog.show(Videoview.this, "", "Buffering video pleasewait...", true);
progressDialog.setCancelable(true);
Videoview();
}
private void Videoview()
{
try
{
//getWindow().setFormat(PixelFormat.TRANSLUCENT);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
// getting intent data
Intent in = getIntent();
// Get JSON values from previous intent
String video = in.getStringExtra("Video");
// Displaying all values on the screen
TextView lblVideo = (TextView) findViewById(R.id.video_label);
lblVideo.setText(video);
String path= video;
// String path= "http://www.ebookfrenzy.com/android_book/movie.mp4";
MediaController mediaController= new MediaController(this);
mediaController.setAnchorView(videoView);
//specify the location of media file
Uri uri=Uri.parse(path);
//Setting MediaController and URI, then starting the videoView
videoView.setMediaController(mediaController);
videoView.setVideoURI(uri);
videoView.requestFocus();
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.toString());
finish();
}
}
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
}