gpt4 book ai didi

ios - StageWebView、iOS、本地文件

转载 作者:行者123 更新时间:2023-11-29 11:03:13 24 4
gpt4 key购买 nike

我正在使用 Flash Builder、Flex 4.6 和 AIR 3.5 为 IOS 构建一个移动应用程序。我正在调查使用 StageWebView 呈现一些 HTML5 内容。

我想做的是将内容构建到应用程序中,而不是将其放在服务器上。它是相对静态的。但我读到(并确认)StageWebView 不能直接使用应用内文件。但是按照建议,我让应用程序将内容复制到一个临时文件夹,然后为 StageWebView 创建一个 file://URL,这似乎有效:

//  create the view
var webView:StageWebView = new StageWebView();
webView.stage = this.stage;
webView.viewPort = new Rectangle( 0, 0, stage.stageWidth, stage.stageHeight);

// copy the HTML5 content to a temp directory
var src:File = File.applicationDirectory.resolvePath("myFolder");
var temp:File = File.createTempDirectory().resolvePath("myFolder");
copyFolderContentsToAnotherFolder(src,temp);

// what's the URL
var newPath:String = "file://" + temp.nativePath + "/index.html";

// load it
webView.loadURL(newPath);

这是个坏主意吗?临时文件是否会堆积在我的设备中且无法删除?

我还考虑过让该应用程序实现一个最小的 HTTP 服务器,方法是监听端口并在请求的文件到来时提供数据。这将允许我们将文件从应用程序内的位置提供给 StageWebView,而无需复制。我们在桌面 air 应用程序中执行此操作,效果非常好。但是,该方法使用 ServerSocket,我发现它在移动设备上不受支持。有替代方法吗?

最后,StageWebView在Flash Builder iOS模拟器中运行不佳,导致调试困难。最好去获取 FB 4.7,它(应该)允许我将它与 XCode 的 iOS 模拟器一起使用吗?

谢谢

最佳答案

好吧,看来我可以直接处理应用内的内容,我只需要为它构造一个 file://URL:

var src:File = File.applicationDirectory.resolvePath("myFolder/index.html");
var newPath:String = "file://" + src.nativePath;
webView.loadURL(newPath);

关于ios - StageWebView、iOS、本地文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14844652/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com