2011-09-21 11 views
6

WebView'da youtube videosunu oynayabiliyordum. Youtube videosu tamamlandığında otomatik olarak WebView'u bitirmek/kapatmak/yok etmek istiyorum. Burada youtube videosunun tamamlanmasının bitiminde nasıl oynanacağını android webview

benim kodudur: ses o Özel oynatıcımda ve ne zaman oynanan çalma listesinde ben çalma listesinden şarkıları (ses/video) oynamak için çalışıyordu

Aslında
WebView engine = new WebView(this); 
    engine.getSettings().setJavaScriptEnabled(true); 
    engine.getSettings().setPluginsEnabled(true); 
    engine.loadUrl("http://www.youtube.com/embed/bIPcobKMB94?autoplay=1&rel=0&loop=0");//&enablejsapi=1"); 
    setContentView(engine); 

var youtube video var ise WebView'da çaldı ve şarkılar otomatik olarak onCompletion'da birbiri ardına oynuyor. Youtube videosu WebView'da oynatıldı, ancak videonun tamamlanmasından sonra, web görünümü hala açık (yok/bitirmeyecek) açık. WebView'u nasıl bitirip önceki etkinliğe geri dönebilirim?

cevap

1

Android'in web görünümü uygulaması, temelindeki MediaPlayer ile ilgili API'leri ve geri çağrıları gizler. Uygulamanın resme dönüştüğü tek durum, bir kullanıcının tam ekrana gitmeye çalışmasıdır (WebView'de gömülü videoda tam ekran simgesine tıklamak). Bu durumda, uygulamanın WebChromeClient geri çağrısı uygulayıp kaydettiği onShowCustomView() geri çağrılır. Bir videonun web görüntülemede oynamayı bitirdiğini bilmenin bir yolu yoktur.

Sorgunun bu olmadığını bilmiyorum: ama neden youtube uygulamasını URL'yi oynatmak için bir niyet göndererek kullanmıyorsunuz? Bir sonuç koduyla onActivityFinished() API'nizi (bu geri bildirimi uygulamanız gerekir) geri çağırmak için startActivityForResult() yöntemini kullanabilirsiniz. Bu senin için işe yaramayacak mı?

+1

Cevabınız için teşekkürler. ama bu kullanıcının uygulamamın dışına çıkmasını istemiyorum. Aksi takdirde startActivityForResult kullanarak mümkündür –