2011-09-09 22 views
0

我嘗試了很多次,並嘗試使用HTML標記<object>,但應用程序只是崩潰並消失。Webview是否需要HTML標記<object>?

當我使用正常的HTML標記如<html><body><h1><div><td><tr>等。這些可以直接顯示沒有任何錯誤每次。

這一次,我嘗試將<object>標籤嵌入到網頁視圖,它總是崩潰! 有誰知道如何直接在代碼中執行此操作?或者,webview不能做到這一點?

這裏是我的代碼。


String html = 
    "<html>" + 
    "<body><h1>This is a test !!</h1>" + 
    "<object classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' codebase='http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0' width='200' height='200'></object>" + 
    "<param name='quality' value='high'>" + 
    "<param name='allownetworking' value='internal'>" + 
    "<param name='allowScriptAccess' value='never'>" + 
    "<param name='movie' value='http://video.yutube.com/flv2.swf?i=20100129LqvamMPB&amp;d=360.25&amp;movie_stop=off&amp;no_progressive=1&amp;otag=1&amp;sj=5&amp;rel=1'>" + 
    "<param name='allowFullScreen' value='true'>" + 
    "<embed src='http://video.yutube.com/flv2.swf?i=20100129LqvamMPB&amp;d=360.25&amp;movie_stop=off&amp;no_progressive=1&amp;otag=1&amp;sj=5&amp;rel=1' width='200' height='200' quality='high' allownetworking='internal' allowscriptaccess='never' allowfullscreen='true' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer'></embed>" + 
    "</object>" + 
    "</body></html>"; 

mWebView.loadDataWithBaseURL("", html, "text/html", "utf-8", ""); 

回答

0

的WebView絕對可以處理的HTML標籤。我不認爲你應該使用雖然loadDataWithBaseURL,試試這個來代替:

mWebView.loadData(html, "text/html", "UTF-8"); 

我不太清楚你的<object>會的工作,雖然...

這裏的,如果玩YouTube視頻更好的辦法這就是你需要:

startActivity(new Intent(Intent.ACTION_VIEW, 
    Uri.parse("http://www.youtube.com/watch?v=<video-id>"))); 

把你的視頻ID在地方<video-id>

+0

這一次,我把你的建議,並改變mWebView.loadData(),應用程序不會崩潰了,而是,它顯示空白屏幕。我使用相同的設置將Web頁面添加到WebServer,並使用mWebView.loadUri()。它工作正常。我可以看到YouTube視頻,但我打算將此網頁移至APP本身,目前爲止還沒有任何工作可以實現!任何其他建議? – Neo

+0

我試了五次。我使用這個網頁來加載.loadUrl(),它工作正常,但是當我把這些HTML內容作爲一個字符串的HTML,並將其提供給.loadData(),它只是根本不工作! – Neo

+0

我想你應該試試這個另一種方法,如果你想要的是顯示一個YouTube視頻(見上面的代碼)或這可能會更好地工作過:http://stackoverflow.com/questions/3458765/how-to-embed- A-YouTube的剪輯-IN-A-網頁瀏覽式上,機器人 –

1

你有一個< object>標籤和兩個</object>標籤。第一個</object>必須去。

embed標記是不承認的對象標籤瀏覽器。這些瀏覽器會看到嵌入標籤並嘗試使用它。只要嵌入在對象內,支持對象標記的瀏覽器將使用該對象並忽略嵌入。如果嵌入位於對象之外,則對象感知瀏覽器可以加載對象和嵌入標記。