如何将我的内容实时流式传输到android应用程序?

时间:2018-09-22 06:32:53

标签: android youtube-api live-streaming android-youtube-api

我正在使用youtube live在android移动应用程序上流式传输我的体育赛事。但这不是一个可行的选择,因为每当我停止播放流并开始播放新视频时,YouTube实时流的视频代码都会更改,因此如果停止当前流,我将无法再次播放。下面是我的流的代码:

youTubePlayerView = (YouTubePlayerView)findViewById(R.id.youtube_player_view);
    onInitializedListener = new YouTubePlayer.OnInitializedListener() {
        @Override
        public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean b) {
            youTubePlayer.play();
            youTubePlayer.setFullscreen(true);
            youTubePlayer.loadVideo("video-code");

        }

是否可以使用youtube API自动放置新视频代码? 请帮忙。

1 个答案:

答案 0 :(得分:0)

由于没有人回答我的问题,所以我会自己回答。

我们可以使用webview来代替youtube API。否,我们可以使用youtube链接中的video-code永久性地将直播流嵌入channelID中,而不是使用webview来直播YouTube直播。

这是代码:

public class WebViewPlayer extends AppCompatActivity {

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

        String frameVideo = "<html><body>Youtube video .. <br> <iframe width=\"400\" height=\"290\" src=\"https://www.youtube.com/embed/live_stream?channel=YOUR_CHANNEL_ID\" frameborder=\"0\" allowfullscreen=\"true\"></iframe></body></html>";

        WebView webView = (WebView)findViewById(R.id.webview);
        webView.setWebViewClient(new WebViewClient(){
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                return false;
            }
        });
        WebSettings webSettings = webView.getSettings();
        webSettings.setJavaScriptEnabled(true);
        webView.loadData(frameVideo, "text/html", "utf-8");
    }
}