5

我可以将 C++ 库包装到 Adob​​e Air 原生扩展 IOS/Android 吗?

我有一个由第三方编写的 C++ 库。我想将该库用于移动的 adobe air 本机扩展?我能做到吗。如果是这样,我在哪里可以找到一些指导方针?

4

3 回答 3

2

我将尝试回答问题的 Android 部分。

我没有看到它在 Adob​​e Air 文档中明确说明这是可能的,但在 Adob​​e Air 的 Adob​​e 帮助文档中,打包原生扩展部分:构建原生库,它说:

Android 原生库:当您使用 Android NDK 时,提供一个文件名如下的共享库(等)

您可能知道,NDK允许您使用包括 C++ 在内的本机代码语言来实现部分 Android 应用程序。

我认为文档中的这个参考意味着它是可能的。作为起点,我会熟悉 NDK 的细节。

虽然这不是关于如何继续进行的详细指南,但我希望它可以为正确的方向提供指导。

于 2012-12-25T01:05:01.293 回答
2

构建 ANE 以包装 C++ 库的另一种方法是使用新的 Adob​​e“C++ 到 Flash”编译器(以前称为 Alchemy)将其编译为 Flash 字节码。它可以生成一个您以后可以从 ActionScript 调用的 swf。这是一个解释如何做到这一点的教程。这是它官方网站。

于 2012-12-25T14:46:37.773 回答
0

对于 iOS,如果您可以统计链接到它,您可以使用 c 库。iOS 上的 ANE 不支持动态链接(从 3.2 开始,不确定新版本中是否有所改变)。静态链接在 Xcode 中是相当简单的过程,只需 google 一下。

对于安卓:

如果你有 .so 文件,你可以用 JAVA 编写你的 ANE 并使用 jni(System.loadLibrary) 与你的 cpp 库对话。它比完全在 CPP 中编写 ANE 要好。请参阅文档“在 ANE 包中包含其他 Android 共享 .so 库”部分以了解更多信息。

于 2013-01-12T19:34:01.173 回答