Kiosk 游戏在没有 AIR 的情况下编写本地文件 AS3?可能的?如果没有,本地服务器?
Posted
技术标签:
【中文标题】Kiosk 游戏在没有 AIR 的情况下编写本地文件 AS3?可能的?如果没有,本地服务器?【英文标题】:Kiosk game writing local files AS3 without AIR? Possible? If not, local server? 【发布时间】:2013-04-01 21:09:51 【问题描述】:我正在设置一个将在路上进行的自助服务终端游戏。我需要能够将 XML 文件写入本地硬盘(不保证互联网连接)。
我意识到 AIR 是可行的方法,但出于各种原因 - 其中一个原因是客户不希望它作为 AIR 运行,因为它将在 YCD 媒体播放器中,并且客户更容易工作使用 SWF -- 我想探索非 AIR 选项。
有没有什么方法可以在没有提示的情况下写入本地文件?我从之前的讨论中得到它(Is it possible to load a local file without having to ask the user to browse to it first in an AIR Application?),答案是“不”。是吗?
如果我可以访问互联网,我可以写入服务器并执行一点 php 来写入文件。在 Windows 机器上设置并在本地执行这有多难?我对 Windows 完全一无所知,也没有可以使用的 Windows 机器,所以我想让它变得简单。这需要在落后的道路上完美地工作,并且可以由非技术人员维护。有人建议使用 XAMMP……
当然,理想情况下,如果我能想出一个仅限 AS3 的解决方案,那就太好了。或者也许(如果有人知道的话)可以与 YCD 播放器配合使用……
谢谢!
【问题讨论】:
让它与设置在 localhost 上的服务器通信以进行写入。 出于非常非常好的理由,如果没有本地提示,您将无法写入文件。如果您的客户不喜欢 air,您可以使用强制运行时导出 AIR 项目,这样您就可以获得一个不需要安装 AIR 的标准 .exe 文件。类似的解决方案是 MDM Zinc 如果你只需要使用 swfs,你可以使用SharedObjects
。在这里查看我的示例:***.com/questions/15667848/…。 SharedObjects 只是 cookie,如果您希望数据长期持久,您必须确保它们不会被清除。
【参考方案1】:
如果您只处理小数据,SharedObjects
可以解决您的问题,正如 LondonDrugs_MediaServices 在他的评论中所说的那样。您可以向其中写入任何内容,但默认情况下限制为 100KB。要获得更多,您必须接受prompt 或preset 以更大的尺寸。
有没有什么方法可以在没有提示的情况下写入本地文件?
SharedObjects
不谈,出于安全原因,您不能这样做。如果您只使用 Flash 播放器、网络或投影仪,则无法在没有提示的情况下直接写入文件。您可以从两者读取本地文件,但您必须知道您的sandbox,因为当您混合使用网络和本地文件访问时,它会变得混乱。
如果你可以运行本地网络服务器,我建议你使用Mongoose,因为它很小,有 PHP,设置简单,几乎可以在任何东西上运行。请注意,您仍然需要注意您的 security sandbox,但是从同一个本地网络服务器提供 SWF 可以简化这一点。
【讨论】:
谢谢——这是 XML 数据。我决定让他们简单地运行一个简单的服务器设置 (XAMMP) 并使用一个简单的 PHP 脚本编写。以上是关于Kiosk 游戏在没有 AIR 的情况下编写本地文件 AS3?可能的?如果没有,本地服务器?的主要内容,如果未能解决你的问题,请参考以下文章
使用 WinRT Appointments API 在没有用户确认的情况下编写约会
是否可以在没有包含保护且没有多个定义错误的情况下编写头文件?