1

I have a flash video in WebView, it works fine until I want to show it in full screen. I did override method

public void onShowCustomView (View view, int requestedOrientation, WebChromeClient.CustomViewCallback callback)

the way similar as it is https://github.com/android/platform_packages_apps_browser/blob/master/src/com/android/browser/BaseUi.java as it was recommended at flash player crashes when trying to enter fullscreen mode android 4.0 , but I get the following exception:

05-01 22:58:05.737: E/Handler(32402): Failed to handle callback; interface not implemented, callback:com.adobe.flashplayer.FlashPaintSurface$7@41bf1b38
05-01 22:58:05.737: E/Handler(32402): android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
05-01 22:58:05.737: E/Handler(32402):   at android.view.ViewRootImpl.checkThread(ViewRootImpl.java:4381)
05-01 22:58:05.737: E/Handler(32402):   at android.view.ViewRootImpl.recomputeViewAttributes(ViewRootImpl.java:2455)
05-01 22:58:05.737: E/Handler(32402):   at android.view.ViewGroup.recomputeViewAttributes(ViewGroup.java:988)
05-01 22:58:05.737: E/Handler(32402):   at android.view.ViewGroup.recomputeViewAttributes(ViewGroup.java:988)
05-01 22:58:05.737: E/Handler(32402):   at android.view.ViewGroup.recomputeViewAttributes(ViewGroup.java:988)
05-01 22:58:05.737: E/Handler(32402):   at android.view.View.setSystemUiVisibility(View.java:13381)
05-01 22:58:05.737: E/Handler(32402):   at com.adobe.flashplayer.FlashPaintSurface$2.surfaceCreated(FlashPaintSurface.java:234)
05-01 22:58:05.737: E/Handler(32402):   at android.view.SurfaceView.updateWindow(SurfaceView.java:543)
05-01 22:58:05.737: E/Handler(32402):   at android.view.SurfaceView.access$000(SurfaceView.java:81)
05-01 22:58:05.737: E/Handler(32402):   at android.view.SurfaceView$4.setFormat(SurfaceView.java:718)
05-01 22:58:05.737: E/Handler(32402):   at com.adobe.flashplayer.FlashPaintSurface$7.run(FlashPaintSurface.java:717)
05-01 22:58:05.737: E/Handler(32402):   at android.os.Handler.handleCallback(Handler.java:607)
05-01 22:58:05.737: E/Handler(32402):   at android.os.Handler.dispatchMessage(Handler.java:92)
05-01 22:58:05.737: E/Handler(32402):   at android.os.Looper.loop(Looper.java:154)
05-01 22:58:05.737: E/Handler(32402):   at android.webkit.WebViewCore$WebCoreThread.run(WebViewCore.java:783)
05-01 22:58:05.737: E/Handler(32402):   at java.lang.Thread.run(Thread.java:864)

How to implement a callback for com.adobe.flashplayer.FlashPaintSurface? What I'm missing here?

Note I'm having this problem just on ICS (Android > 4.0) as on Android < 4.0 another method

public void onShowCustomView (View view, WebChromeClient.CustomViewCallback callback)

is called and view has a child type of VideoView.

I hope someone could help.

Regards Mindaugas.

Community
  • 1
  • 1
  • I wasn't able to solve this, but I found that if I set 'Plugin State OFF' than video provider automatically was using HTML5 video instead of flash. I was able to play HTML5 videos in full screen by using code from http://code.google.com/p/html5webview/. – Mindaugas Dobilas May 11 '12 at 11:08

0 Answers0