Ich habe eine Aktivität genannt VideoActivity .Below die youtubeplayerview gibt es eine Liste von videos.On das erste Mal das Video loading.When i dann auf eine andere Tätigkeit gehen auf einem Element klicken und Wenn Sie dann zu dieser Aktivität zurückkehren, wird sie nicht abgespielt. Darf ich den Grund erfahren ? HierYoutube Spielervideo Laden nicht
ist der Code
public class VideoActivity extends YouTubeBaseActivity implements YouTubePlayer.OnInitializedListener {
public Video video;
private RecyclerView recyclerVideos;
private static final int RECOVERY_DIALOG_REQUEST = 1;
private YouTubePlayerView youTubeView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_video);
recyclerVideos = (RecyclerView) findViewById(R.id.recyclerVideos);
Intent i = getIntent();
video = (Video) i.getSerializableExtra("video");
LinearLayoutManager layoutManager = new LinearLayoutManager(this);
layoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
recyclerVideos.setLayoutManager(layoutManager);
new VideoAsyncTask().execute();
}
@Override
public void onInitializationFailure(YouTubePlayer.Provider provider,
YouTubeInitializationResult errorReason) {
if (errorReason.isUserRecoverableError()) {
errorReason.getErrorDialog(this, RECOVERY_DIALOG_REQUEST).show();
} else {
String errorMessage = String.format(
getString(R.string.error_player), errorReason.toString());
Toast.makeText(this, errorMessage, Toast.LENGTH_LONG).show();
}
}
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider,
YouTubePlayer player, boolean wasRestored) {
if (!wasRestored) {
player.cueVideo(video.Videoid);
player.setPlayerStyle(YouTubePlayer.PlayerStyle.DEFAULT);
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == RECOVERY_DIALOG_REQUEST) {
// Retry initialization if user performed a recovery action
getYouTubePlayerProvider().initialize(Constants.DEVELOPER_KEY, this);
}
}
private YouTubePlayer.Provider getYouTubePlayerProvider() {
return (YouTubePlayerView) findViewById(R.id.youtube_view);
}
private class VideoAsyncTask extends AsyncTask<Void, Void, Video> {
@Override
protected void onPreExecute() {
}
@Override
protected Video doInBackground(Void... params) {
try {
return webservice();
} catch (Exception e1) {
e1.printStackTrace();
return null;
}
}
protected void onPostExecute(final Video video) {
try {
if (video == null) {
return;
}
VideosAdapter videoAdapter = new VideosAdapter(video.videos,VideoActivity.this);
recyclerVideos.setAdapter(videoAdapter);
youTubeView.initialize(Constants.DEVELOPER_KEY, VideoActivity.this);
} catch (Throwable ignored) {}
}
}
}
Könnten Sie bitte weitere Details zur Implementierung hinzufügen? Ich habe deinen Schritt versucht, aber es hat immer noch nicht funktioniert. Vielen Dank. –
@DucLe: Hey Ich habe ein LinearLayout in XML erstellt und die YoutubeView zu LinearLayout hinzugefügt und dann initialisiert. Wenn ich wieder zu dieser Aktivität aus einer anderen Aktivität komme dann in OnResume habe ich die Ansicht entfernt und neu hinzufügen. – Debugger