[Android]如何在Android中加载swf文件(API 23)

时间:2015-11-18 13:13:31

标签: java android flash android-webview

我想在Android中加载swf文件,但似乎Android不支持swf 我谷歌它,大多数开发人员建议使用webview:

WebSettings settings = webview.getSettings();
settings.setPluginsEnabled(true);
webView.getSettings().setPluginState(WebSettings.PluginState.ON);
webView.loadurl("....swf");

但删除了setPluginsEnabled,并且在Api级别23中弃用了setPluginState。

2 个答案:

答案 0 :(得分:2)

  

“但似乎Android不支持swf”

是的,正如您所知...... Adob​​e已停止在移动浏览器上使用Flash Player。他们建议你只在app中打开FlashPlayer内容,因为.. drumroll ... Adob​​e有their own tool来创建Android应用程序,只有他们的工具允许在移动应用程序中打开SWF。

问题在于,任何加载到应用程序中的SWF都无法运行自己的代码(可能是来自心胸不善的人的不安全代码)。所以接下来最好的事情是使用Flash自己的StageWebView来打开一个带有flash嵌入的html页面,所有内容都像计算机浏览器一样完美运行(这次只通过Flash制作的Android应用程序的StageWebView部分)。

所以回答..

  

我想在Android中加载swf文件

只需下载最新的 Flash CC (开发工具包),然后通过ActionScript-3代码而不是Java代码重新创建应用。它们都是类C语言(虽然我认为AS3在API名称等方面比C#更接近C#但是你可以看到Java / Android在哪里“ WebView ”以及AS3有“ StageWebView ”所以切换此应用可能并不难(如果重要的话,可以证明学习新的OOP语言)

答案 1 :(得分:0)

您可以使用https://wiki.mozilla.org/Mobile/GeckoView

有助于播放swf个文件。

您还需要在GeckoView中设置plugin.state.flash = true; ..

糟糕的是,如果您选择使用GeckoView(如果我不记得错误的话),apk将增加20-25 MB,因为GeckoView适用于jni ......