我可以将c++库打包为适用于移动IOS/Android的Adobe Air原生扩展吗
Could I wrap c++ library to Adobe Air native extension for mobile IOS/Android
我可以将C++库封装到Adobe Air本机扩展IOS/Android吗?
我有一个由第三方编写的C++库。我想使用该库为移动设备进行adobeair原生扩展吗?我能做到吗?如果能,我在哪里可以找到一些指导方针?
我将尝试回答问题的Android部分。
我还没有在Adobe Air文档中明确指出这是可能的,但在Adobe Air的Adobe帮助文档中的"打包本地扩展:构建本地库"一节中,它说:
Android原生库:当你使用Android NDK时,提供一个文件名如下的共享库(etc)
您可能知道的NDK允许您使用包括C++在内的本地代码语言来实现Android应用程序的某些部分。
我认为文档中的引用意味着这是可能的。作为一个起点,我会熟悉NDK的细节。
虽然这不是一个关于如何处理的详细指南,但我希望它能为正确的方向提供一个指针。
构建ANE来包装C++库的另一种选择是使用新的Adobe"C++到Flash"编译器(以前称为Alchemy)将其编译为Flash字节码。它可以生成一个swf,以后可以从ActionScript调用该swf。这是一个教程,解释了如何做到这一点。这是它的官方网站。
对于iOS,如果可以统计链接到c库,则可以使用它。iOS上的ANE不支持动态链接(截至3.2,不确定更新版本中是否发生了更改)。静态链接在Xcode中是一个相当容易的过程,只需谷歌即可。
适用于Android:
如果你有.so文件,你可以用JAVA编写ANE,并使用jni(System.loadLibrary)与你的cpp库对话。这比完全用CPP写ANE要好。请参阅电子文档"包括ane包中的其他Android共享.so库"部分了解更多信息。
- 使用C++库在Android项目中修改gradle中的cmake参数,用于插入指令的测试
- 如何使用ndk-build.cmd构建Android.so文件
- Android NDK传感器向事件队列报告奇怪的间隔
- Android P-9.0.0_r53 Logcat主缓冲区超出定义大小
- OpenCV Android C++ imwrite not found
- Android NDK 编译 LAME HAVE_MPGLIB > 'interface.h' 文件未找到
- 如何使用 Boost Asio 在 Android 上获取我的本地 udp IP 地址?
- Android Studio 中带有静态库的原生C++代码
- 如何在 Android Studio 4 中编译 C/C++ 原生代码
- Android NDK clang 编译器错误在 Windows 上显示'No such file or directory'
- Android 在编译二进制文件时重建静态库
- 我只想在Android 4.4中使用C++11库
- 无法将标准库导入本机 android 项目中的头文件
- Android Java USB for native cpp
- 来自 Android 应用程序内部的 boost 类型的 boost::wrapexcept<boost::system::system_error> 的未捕获异常
- 在OSX上使用CMake将Adobe的XMP工具包构建为共享库的最简单方法是什么?
- Android Studio:如何在build.gradle中定义自定义宏(针对不同的构建变体),并让原生C / C++
- 在Android原生C++中使用Facemark opencv contrib
- 最小的CMake构建为Android
- 我可以将c++库打包为适用于移动IOS/Android的Adobe Air原生扩展吗