我需要使用Adobe AIR本机扩展API(ANE)包装C库。扩展应该以IOS和Android为目标。首先,我意识到对于Android,如果不使用NDK API,我必须将该库移植到Java但我主要担心的是IO操作,比如读取和写入文件系统,它存在于该库中。我通过ANE development manual读取但没有找到关于限制与主机文件系统进行本机lib通信的说明。这意味着我的意思是允许本机库自由读取和扩展AIR扩展中的文件?
答案 0 :(得分:1)
您绝对可以访问文件系统来读取和写入文件。
此处唯一需要注意的是,您只能访问应用程序有权访问的文件系统部分。因此,您基本上只需遵守普通本机应用程序开发人员所具有的任何限制。
我使用java.io.File来访问ANE中的文件没问题。
答案 1 :(得分:0)
根据我所看到的扫描,它也会让我感觉它是可行的,但我无法确认100%
创建本机扩展时,您提供以下内容:
您定义的ActionScript扩展类。这些ActionScript类使用内置的ActionScript API,允许访问本机代码并与之交换数据。
本机代码实现。本机代码使用本机代码API,允许您使用ActionScript扩展类进行访问和数据交换。
听起来像你有任何可用于编写本机扩展的本机API,它们只是提供了一个“桥”或“数据隧道”来在actionscript代码和本机扩展之间进行通信。他们从android库中导入一个用于登录他们的示例,所以我想你可以使用每个平台可用的任何对象/方法,我想唯一真正的问题是本机进程对文件系统的访问权限是什么每个平台。如果你没有得到答案,请尝试回复(如果我有时间,我也会这样做)。