将YouTube视频嵌入到libGDX项目中

时间:2015-04-11 16:36:08

标签: youtube libgdx

我想将YouTube视频嵌入我的应用程序中?我找不到关于这个话题的任何内容。是否有任何指定的方法用于此目的?

2 个答案:

答案 0 :(得分:2)

不,使用清晰的libGDX是不可能的。这取决于您开发应用程序的平台。

如果目标是 Android ,则必须进行另一项从libGDx启动的活动。在那里你实现webview,它将包含youtube视频的url。在libGDX中按下按钮(或任何事件)之后,可以启动应用程序活动并且后台将会休眠。

活动示例,打开对话框并创建webView:

public class WebVideo extends Activity {

    private String url;    

    public WebVideo(String url) {    
        this.url = url;     

    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }

    @Override
    protected void onResume() {
        super.onResume();    
        WebView webview = null;    
        // if we have internet connection
        if (common.IsNetworkAvailable()) {
            setContentView(R.layout.activity_list_item);

            // initialize web view
            webview = (WebView) this.findViewById(R.id.widget_frame);
            webview.getSettings().setJavaScriptEnabled(true);
            webview.getSettings()
                    .setJavaScriptCanOpenWindowsAutomatically(true);
            webview.setBackgroundColor(color.black);
            // loar url of questionnare
            webview.loadUrl(url);
            webview.setWebViewClient(new WebViewClient() {
                @Override
                public boolean shouldOverrideUrlLoading(WebView view, String url) {
                    view.loadUrl(url);
                    return true;
                }

                @Override
                public void onPageStarted(WebView view, String url,
                        Bitmap favicon) {

                }
            });
        }
        // if we dont have connection, show dialog and end activity
        else {
            buildDialog(this).show();
        }    
    }

    // show alert dialog
    private AlertDialog.Builder buildDialog(Context c) {    
            //Maybe we want some alert dialog (implementation here)
            }
        });    
        return builder;
    }   

    private void finishActivity() {
        // some result after exit if we want    
        this.finish();
    }
}

如果您的目标是 iOS ,我相信,对此有类似的处理方式。 Html :您仍应在同一浏览器中打开视频。 至关重要的是桌面,我知道最好的,不可能以一些明确的方式伪造它。

答案 1 :(得分:2)

我在这里找到了一个非常好的解决方案:https://github.com/libgdx/gdx-video这是一个视频渲染扩展,正在进行连续开发。