我申请从YouTube投放视频
我的问题是我将我的YouTube视频链接放在Firebase上
但是在开始活动时查看YouTube无效,因为在获取Firebase的值之前,它会为youtube vedio加载变量视频的值
我想要一种在输入Youtube代码之前获取价值的方法
那是我的代码:
private TextView mvalueview1;
private Firebase mref;
private YouTubePlayerView youTubePlayerView;
private YouTubePlayer.OnInitializedListener onInitializedListener;
private String x;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//fullscreenANDtoolbar();
setContentView(R.layout.watch_youtube);
mref = new Firebase("Link_of_firebase_value");
mvalueview1 = (TextView) findViewById(R.id.textView5);
mref.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
String value = dataSnapshot.getValue(String.class);
mvalueview1.setText(value);
x = value;
}
@Override
public void onCancelled(FirebaseError firebaseError) {
}
});
youTubePlayerView = (YouTubePlayerView) findViewById(R.id.youtubeview);
final TextView txtView = (TextView) findViewById(R.id.text);
txtView.setText(x);
onInitializedListener = new YouTubePlayer.OnInitializedListener() {
final String VedioUrl = txtView.getText().toString();
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean b) {
youTubePlayer.loadVideo(VedioUrl);
}
@Override
public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) {
}
};
youTubePlayerView.initialize("API_KEY", onInitializedListener);
}
答案 0 :(得分:0)
我建议您使用Rxjava库逐个链接所有操作 - 首先从数据库获取视频路径,然后等待播放器准备就绪,然后等待这两个任务完成.zip()。first()运算符和响应开始播放视频