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

Java [Android]如何在Android中加载swf文件(API 23),java,android,flash,android-webview,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"); 但是setPlugin

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

WebSettings settings = webview.getSettings();
settings.setPluginsEnabled(true);
webView.getSettings().setPluginState(WebSettings.PluginState.ON);
webView.loadurl("....swf");
但是setPluginsEnabled被删除,setPluginState在Api级别23中被弃用


“但Android似乎不支持swf”

是的,正如我告诉你的。。。Adobe停止在移动浏览器上使用Flash Player。相反,他们建议您在应用程序中打开FlashPlayer内容,因为。。drumroll。。。Adobe必须创建Android应用程序,只有他们的工具才允许在移动应用程序中打开SWF

问题是,任何加载到应用程序中的SWF都不能只运行自己的代码(可能是来自恶意用户的不安全代码)。因此,下一个最好的方法是使用Flash自己的StageWebView打开一个html页面,该页面嵌入了Flash,一切都像在电脑浏览器上一样运行(只是这次通过Flash制作的Android应用程序的StageWebView部分)

所以我要回答

我想在Android中加载swf文件

只需下载最新的(开发工具包)并通过ActionScript-3代码而不是Java代码重新创建应用程序。它们都是类似C的语言(虽然我觉得AS3在API名称等方面更接近C,而不是Java),但正如你所看到的,Java/Android有“”以及3有“”,因此切换到这个应用程序可能并不难(如果重要到足以证明学习一种新的OOP语言是正确的话)

你可以使用

用于播放
swf
文件

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


坏主意是如果你选择使用GeckoView(如果我没有记错的话),你的
apk
将增加20-25 mb,因为
GeckoView
与jni一起工作…

“但Android似乎不支持swf”--正确。Adobe几年前就放弃了对Android上Flash的支持。几乎没有运行Android 4.1+的设备会有Flash,这意味着不推荐的设备意味着它可以使用。@tinysunlight它不起作用…SWF不是视频。FLV是视频。就我所知,这里没有列出:。任何非标准设备都需要您自己的编解码器。这就是n一个适用于Android的合适视频api。这是一个指向flash播放器的链接,带有视频id作为参数,可以嵌入到网站中。适用于Android的合适api需要将视频直接公开为MP4左右。如果他们不提供,可能他们不想让你将视频包含到你的应用程序中?