C++ ライブラリを Adobe Air ネイティブ拡張 IOS/Android にラップできますか?
サードパーティによって作成された C++ ライブラリがあります。そのライブラリをモバイル用の adobe air ネイティブ拡張に使用したいですか? やれるかな。もしそうなら、どこでガイドラインを見つけることができますか?
C ++ライブラリをラップするANEを構築する代わりに、新しいAdobe "C ++ to Flash"コンパイラ(以前はAlchemyと呼ばれていました)を使用して、ANEをFlashバイトコードにコンパイルすることもできます。後でActionScriptから呼び出すことができるswfを生成できます。これは、その方法を説明するチュートリアルです。そして、ここにその公式ウェブサイトがあります。
質問のAndroidの部分に答えようとします。
これが可能であることがAdobe Airのドキュメントで明示的に綴られているのを見たことがありませんが、Adobe AirのAdobeヘルプドキュメントのセクションネイティブ拡張機能のパッケージ化: ネイティブライブラリの構築 には、次のように書かれています:
Android ネイティブ ライブラリ: Android NDK を使用する場合は、共有ライブラリに次のようなファイル名を指定します (など)。
ご存知かもしれませんが、NDK を使用すると、C++ などのネイティブ コード言語を使用して Android アプリの一部を実装できます。
ドキュメントのこの参照は、それが可能であることを意味します。出発点として、NDK の詳細に精通します。
これは、どのように進めるかについての詳細なガイドラインではありませんが、正しい方向への指針となることを願っています。
iOS の場合、統計的にリンクできる場合は c ライブラリを使用できます。iOS 上の ANE は動的リンクをサポートしていません (3.2 の時点では、新しいリリースで何かが変更されたかどうかは不明です)。静的リンクは、Xcode でググるだけのかなり簡単なプロセスです。
アンドロイド用:
.so ファイルがある場合は、ANE を JAVA で記述し、jni(System.loadLibrary) を使用して cpp ライブラリと通信できます。ANE を CPP で完全に記述するよりも優れています。詳細については、ドキュメントの「ANE パッケージに追加の Android 共有 .so ライブラリを含める」セクションを参照してください。