問題タブ [air-native-extension]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 新しい Google Cloud Messaging を使用した Flash Air ANE プッシュ通知
この ANE を使用して新しい GCM に登録しようとしました: https://github.com/freshplanet/ANE-Push-Notification iOS プッシュは問題ありませんが、Android バージョンはこのトレース メッセージでフリーズします: 認識されないイベント REGISTERING
これは私のxml記述子です:
アプリは Flash Pro CS6 でビルドされました。
誰か助けて ?
ios - iOS用にパッケージ化するとlibが見つかりません
()内の数字については、最後のリンクを参照してください
モバイルデバイスでバースト広告を使用できるようにするために、Air Native Extension(ANE)を開発しています。
セットアップとしては、FlashDevelop4.0.4とAdobeAir3.3を使用しています。Flex4.6.0SDKを使用しています。プロジェクトはWindows7でセットアップされています。
iOSデバイスで動作するために、バーストリーは多くのフレームワークとライブラリを必要とします
iOS用の.aライブラリを作成してコンパイルすることができました。また、AndroidとiOSで共有されるインターフェイス(actionscriptコード)をswcとlibrairy.swfにコンパイルしました。これらはすべて、私のプロジェクトに含まれている.aneに正常にパッケージ化されています。
MacOSで.aライブラリをコンパイルする場合、使用されるすべてのフレームワークとライブラリが「.a」にパッケージ化されていないようです。これが、-platformsdkオプション(1)にAir3.3を使用しなければならなかった理由です。
私はWindowsで作業しているので、この投稿の指示に従ってiOS SDK(2)を入手しました。
必要なフレームワークと(1)に従って、このようなplatformConfig.xmlファイルを作成しました。これは.aneにパッケージ化されています。
これは、actuale.aneをコンパイルするための行です。
iOSアプリをADTでパッケージ化しようとすると、問題が発生します。
これは起こります:
"ld:-libsqlite3のライブラリが見つかりません:実行中にコンパイルに失敗しました:ld64"
フレームワークはうまく追加されているようですが、dylibはそうではありません。次の行を追加しようとしました:
libを含める前に、代わりにこのエラーが発生しました:
"ld:警告:オプション'-Lusr / lib /'のディレクトリが見つかりませんld:-libsqlite3のライブラリが見つかりません実行中にコンパイルに失敗しました:ld64"
フルパスやその他の相対パスを使おうとしましたが、オプションにどのパスを入れても、常に「警告:オプションのディレクトリが見つかりません」というメッセージが表示されます。「-L../」でもこの警告が表示されます。動作しているように見えるのは「-L/../」だけですが、私の.dylibの明らかなものはありません。
だから私の質問は:私は何を間違えたのですか?他に何を試すことができるか考えたことがありますか?なぜそれが機能しないのかについての説明でさえ役立つでしょう!
リンク:
1: http: //blogs.adobe.com/rajorshi/2011/11/16/ios5-support-for-airusing-external-sdks-to-package-apps/
2: http: //blogs.adobe.com/airodynamics/2012/05/18/using-platformsdk-for-ios-on-windows/
apache-flex - AIR アプリケーションで NativeProcess.isSupported と Updater.isSupported の両方を true にすることはできますか?
Windows でユーザー ドメイン名を確認しようとしていますが、ネイティブ プロセスのサポートが必要です。
アプリケーション構成xml(xmlns="http://ns.adobe.com/air/application/2.6"
)で私は持っています
adl でアプリケーションを実行するとすべて動作しますが、アプリケーション (*.air パッケージ) をインストールしようとすると、ネイティブ プロセスがサポートされていないというエラーが表示されます。興味深いことに、コンパイル済みの *.exe ファイルをインストールすると、インストール後にネイティブ プロセスがサポートされます。
しかし、*.exe インストールでは がありますUpdater.isSupported == false
が、*.air パッケージでインストールするとUpdater.isSupported == true
.
*.exe をインストールしているときは profile=extendedDesktop のように見えますが、*.air インストール パッケージを使用しているときは profile=desktop を使用しています。
しかし、私は両方が必要です。この問題を解決する方法はありますか?
コンパイル:
ios - Flex ライブラリに ANE を含めるにはどうすればよいですか?
いくつかのネイティブ拡張機能を統合しようとしている、確立されたモバイル コード ベースがある現在、私は奇妙な状況にいます。コードベースは、Flash Builder 4.6 を介してメインアプリケーションをコンパイルするために使用されるいくつかの「Flex ライブラリプロジェクト」で構成されています。
含まれているライブラリのいずれかでネイティブ拡張機能を使用する必要がありますが、最終リリース ビルドのコンパイル中にクラスが見つからないというエラーが発生し続けます。
欠落しているクラスは、拡張機能の Actionscript 側に含まれているクラスです。
拡張機能を参照するいくつかの方法を試しました。
- ライブラリのビルド パスに swc のようなものを追加する
- ane の名前を swc に変更し、ビルド パスに含める
- 外部リソースとしてリンクしてみた
これらのほとんどは動作しているように見え、デバッグ ビルドを動作させることもできますが、iOS リリース用にパッケージ化すると、上記のエラーが発生します。
クラスは ANE に含まれる Actionscript クラスであるため、これは iOS フレームワークの問題ではありません。
ios - アプリケーションが必要とするネイティブ拡張「ファイル」の実装が、ターゲット プラットフォーム用に見つかりませんでした
iOS 用の最初の ANE を作成しようとしていますが、.IPA ファイルをコンパイルしようとして問題が見つかりました。
私が得るエラーは次のとおりです。
アプリケーションで必要なネイティブ拡張 'XXX' の実装が、ターゲット プラットフォームで見つかりませんでした。
ここで、「XXX」は ANE のパッケージです。
さて、私は Flash Build 4.6 と AIR 3.2 SDK を使用して、必要なすべての関数を含む SWC ファイルをコンパイルしました。XCode を使用して、必要なすべての Objective-C コードを含む .A ファイルをコンパイルしました。両方のファイルが正常にコンパイルされました。ADT を使用して .ANE ファイルをコンパイルしました。それもうまくいきました。
私の extension.xml ファイルは問題ないようです:
繰り返しますが、XXX は私の拡張機能のパッケージです。(例: com.example.myANE)
platform.xml ファイルも使用しています。
そして、次のコードを使用して ANE をコンパイルします。
adt -package -target ane MyANE.ANE extension.xml -swc MyANE.swc -platform iPhone-ARM -platformoptions platform.xml library.swf libExtension.a -platform default library.swf
それはすべてうまく機能し、ANEファイルがあります。
さて、私が取り組んでいるプロジェクトには、すでに他に 4 つの ANE があるので、フラッシュ部分に問題があるとは思いません。しかし、ADT を使用して IPA をコンパイルすると、エラーが発生します。
誰にも役立つ洞察がありますか?
ios - AIR: サードパーティの iOS ネイティブ拡張でのリンカー エラー
現在、iOS アプリケーションに .ane を取り込もうとしています。.ane はサード パーティから提供されたものであり、そのソースはありません。
付属の .swc を自分のプロジェクトにリンクし (アドビとサードパーティの両方が推奨する外部リンク)、.swf を正常にビルドしました。私の問題は、adt を使用して展開用の .ipa を作成するときに始まります。以下は、私が使用しているモックアップされた adt コマンドです。すべての <> を徹底的にチェックしたので、すべて正しく入力されていると想定でき、ビルドはかなりの時間実行されます。私が見逃している善の甘いナゲットがあるかもしれませんが...
次のエラーが表示されるまで、すべてが順調に進んでおり、金切り声で停止します。
これが私に伝えていることは、サードパーティの .ane は、-platformoptions xml ファイルを介して指定するか、それ以外の方法で、sqlite3 ライブラリに対してリンクしようとしており、基になる Xcode プロジェクトがビルドされる adt プロセスの時点であるということです。 、そのライブラリが見つかりません。
私のセットアップは次のとおりです。
Mac OSX Lion Adobe
Flash Builder 4.5 w/PHP
Xcode 4.4.1 Flex 4.6.0 (AIR 3.3) SDK
現在、sqlite3 は /usr/lib にあるので、そこにあることがわかります。実際には、任意のライブラリである可能性があります。これはコマンド ラインの AIR ユーティリティであるため、基礎となる Xcode プロジェクトにアクセスして (私の知る限り) 、ライブラリがどこにあるかを伝えることはできません。
おそらく、他の (自家製またはそれ以外の) 拡張機能ではこの問題が発生していないことに注意する必要がありますが、依存関係があるとしてもほとんどないためです。
ありがとう!
ios - ネイティブキーボードバーAIRiOS
「前へ|次へ」と「完了」キーでAIRiOSアプリバーに表示する方法はありますか?
ios - Adobe AIR for IOS のネイティブ拡張コードは別の CPU スレッドで実行されますか?
Flex 4.6 と AIR 3.3 を使用して IOS アプリケーションを構築しています。オーディオ、画像、およびビデオを処理して新しい「ビデオ」ファイルを作成するために使用する目的の C ライブラリがいくつかあります。
このすべての処理をネイティブ拡張機能を介してデバイス上で行っているため、処理が完了するまでアプリがロックされるのをユーザーが確認できるかどうか疑問に思っています。言い換えれば、進行状況バーを表示し、これが完了するまでアプリで他の操作を許可しないようにする必要がありますか、それともネイティブ拡張コードを別のスレッドで実行しますか?
二次的な質問は... ネイティブ コードが別のスレッドで実行されない場合、新しい Actionscript ワーカーを使用して処理を別のスレッドにオフロードすることは可能ですか?
android - Air Native 拡張機能をステージに追加する方法
Flex Mobile アプリで Android SDK を使用して、Java で記述されたアクティビティを表示する必要があります。Map ANE を使用して実行したことはありますが、サンプル コードやそのようなものは見つかりません。ANE が機能するために必要な Java および ActionScript コードを既に作成しました (アクティビティが作成され、Java と AS3 を真に橋渡しするために必要なすべてのクラス、イベント、およびメソッドがそこにあります)。それをステージに。DisplayList に追加できないことはわかっており、ステージ オブジェクトであっても問題ありません。
まったく役立つ場合は、MediaPlayer を使用してビデオを表示しようとしています (AS3/Flex を使用した場合の MP4 ストリーミングの問題のため)。
Michael の場合 (2012 年 8 月 27 日 @ 午前 9 時 44 分 MST):
私のアクティビティの最初の行は
これが私のJavaの外観です。これは初期化関数です:
そして、ここに私の VideoActivity onCreate() があります:
そして、適切な測定のための私のマニフェスト(アプリケーションセクションのみ):
更新 (2012 年 8 月 27 日 @ 午前 10 時 52 分 MST) さらなる調査 (または試行錯誤、呼び方は自由) の後、startActivity() 行を try{}catch(Throwable e) にスローして確認することにしました。もしあれば、それがスローしていたエラー。興味深いことに、それはこれを投げました。
Android マニフェスト ファイルを再確認する必要があるようです。
android - Androidネイティブ拡張へのAIRで配列を「長い」として受け取る方法は?
Android Vibration のネイティブ拡張を作成しようとしています。私が見つけたすべてのオープンソース拡張機能は、 のみを利用し、 andは利用しvibrate(duration)
ませんvibrate(pattern, repeat)
vibrate.cancel()
パターンを渡し、関数をキャンセルできる必要があります。
vibration(duration)
何の問題もなく元気に仕事ができています。私が使用する簡単なargs[1].getAsInt();
方法があります。が、ありませ.getAsArray
ん.getAsLong
。
FREArray というものを見つけましたが、使い方がよくわかりません。
それで、私の質問は、配列(パターンを含む)とint(繰り返しカウント用)を渡すことができるAS3関数を使用して、Android側で配列を受け取るにはどうすればよいですか? リピートのintを受け取るのに問題はありません。
これは私がこれまで取り組んできたものですが、エラーのために正しく使用していないようです。助言がありますか?