我正在将Flash SWF加载到Android WebView中。
我希望SWF立即全屏并专注。
处理flash的类名是com.adobe.flashplayer.FlashPaintSurface
。观看日志时,当我手动全屏显示闪光灯时,它会调用com.adobe.flashplayer.FlashPaintSurface.toggleFullScreen()
。
我的问题的第一部分是:如何手动为Flash SWF调用该方法?
请注意,对于嵌入了Flash的网页视图,我似乎能够正确地全屏显示它(以使Flash的surfaceview
全屏而不是显示在webview view
顶部的Flash )用两根手指触摸屏幕,直到屏幕顶部弹出一个界面,并且不会可靠地发生。
对于焦点,我在我的webview类中调用:
@Override
protected boolean drawChild (Canvas canvas, View child, long drawingTime) {
if (child.getClass().getName().equals("com.adobe.flashplayer.FlashPaintSurface")) {
child.requestFocus();
}
return super.drawChild(canvas, child, drawingTime);
}
这并没有像我想象的那样设定焦点。虽然我假设,如果正确完全屏蔽,FlashPaintSurface应该给自己的焦点。但如果第一部分不可行,我想至少不要在启动时点击它来关注SWF。
请注意我动态执行此操作,而不是调用我自己编写的SWF,因此无法使用Actionscript解决此问题。
答案 0 :(得分:0)
我使用之前Problem to load flv video in webview解决方案中的代码取得了成功。它可能会有所帮助。
embed标签如下所示:
<embed
style="width:100%; height:100%"
src="./FLVPlayer.swf?fullscreen=true&video=./expression_sad.flv"
autoplay="true"
quality="high"
bgcolor="#000000"
name="VideoPlayer"
align="middle"
allowScriptAccess="*"
allowFullScreen="true"
type="application/x-shockwave-flash"
pluginspage="http://www.macromedia.com/go/getflashplayer">
</embed>
答案 1 :(得分:0)
每个Android应用程序Adobe都使用文件“application.xml” - 默认情况下为其描述符:
在为此编写任何代码之前,请先查看该文件。 它会更改每个修订版本,但我上次使用它时是设置此变量(Full_screen)..