如何在Android中使用Object标签嵌入Youtube视频?

时间:2012-03-30 10:59:35

标签: android video webview embed youtube-api

我正在尝试在我的应用程序的xml文件中嵌入youtube视频。

以下是我的XML文件:

<?xml version="1.0" encoding="utf-8"?>
<WebView
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:id="@+id/tour_webview"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent">  
  <object 
    width="480" 
    height="330">
    <param 
        name="movie" 
        value="http://www.youtube.com/v/tjxpMhGwXH4?version=3&amp;hl=pt_BR&amp;rel=0">   
    </param>
    <param 
    name="allowFullScreen" 
    value="true">
</param>
<param 
    name="allowscriptaccess" 
    value="always">
</param>
<embed 
    src="http://www.youtube.com/v/tjxpMhGwXH4?version=3&amp;hl=pt_BR&amp;rel=0" 
    type="application/x-shockwave-flash" 
    width="480" 
    height="330" 
    allowscriptaccess="always" 
    allowfullscreen="true" />
</object>  
</WebView>

以下是我的java文件:

    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.tours_04);
    WebView wv = (WebView)findViewById(R.id.tour_webview);
    wv.getSettings().setPluginsEnabled(true);
    wv.getSettings().setJavaScriptEnabled(true);
    wv.getSettings().setAllowFileAccess(true);
    wv.loadUrl("http://www.youtube.com/watch?v=tjxpMhGwXH4");
    setContentView(wv);
}

Logcat说:

由abdroid引起.View.InflateException:二进制XML文件行#7:错误扩充类对象

需要帮助!

1 个答案:

答案 0 :(得分:0)

我认为这里的混乱是你试图在HTML布局文件中嵌入HTML标签,而不是HTML。它是特定于Android的XML,仅用于对布局元素和其他组件进行充气,其中一个组件确实是WebView,但为了使其正常工作,您必须将正确的HTML文件或URL加载到您的WebView实例,但您将无法以您尝试的方式嵌入Flash对象。如果你去here,你可以阅读有关如何将HTML文件加载到WebView的文档,如果要显示带有Flash对象的HTML页面,则必须执行此操作。

您可以使用的另一种方法是将所需的Flash对象移植到Adobe AIR应用程序中,并将其作为Android设备上的本地AIR应用程序运行。