0

2 つのライブラリ プロジェクトに分割された複雑な Flex 3 アプリと、ライブラリをインポートする Flex アプリケーションがあります。これをコンパイルして iOS と Andriod で実行したいと思います。

ライブラリは、(ほとんどの場合) mx コンポーネントから派生した純粋な actionscript クラスを使用します。たとえば、追加機能を備えた mx.button から派生したカスタム ボタン。ほとんどのコンポーネントは、mx コンポーネントを一緒に合成することによって作成されます。

Adobe ドキュメントには、モバイル アプリでは mx コンポーネントを使用できないと記載されています。私の質問は: mx コンポーネントの同等のスパークを使用するためにライブラリを変換する必要がありますか?

これを行うための最良のアプローチは何ですか?

モバイル フレックスまたはプロジェクトとして使用するために、ライブラリに特別な設定を適用する必要がありますか?

最後の質問: iOS を対象とする場合、モバイル プロジェクトは as コードを Objective C に変換し、コンパイルしますか?

4

1 に答える 1

3

Adobe ドキュメントには、モバイル アプリでは mx コンポーネントを使用できないと記載されています。私の質問は: mx コンポーネントの同等のスパークを使用するためにライブラリを変換する必要がありますか?

Adobe ドキュメントは完全に正確ではありません。MX コンポーネントがモバイル用に最適化されていないため、Flash Builder モバイル プロジェクトにはデフォルトで含まれていません。できることは、MX SWC をライブラリとしてモバイル プロジェクトに手動で追加することです。その後、問題なく MX コンポーネントを使用できます。

ただし、MX コンポーネントはパフォーマンスやタッチ入力用に最適化されていません。そのため、モバイル アプリケーションでそれらを使用すると制限が発生する場合があります。

最後の質問: iOS を対象とする場合、モバイル プロジェクトは as コードを Objective C に変換し、コンパイルしますか?

わからない。リリース ビルドを iOS にエクスポートするとき、MXML/ActionScript/AIR は、iOS マシンで実行される何らかの形式の iOS バイトコードに直接変換されると思います。それをObjective Cコードに変換し、そのObjective Cコードをコンパイルする中間ステップを実行することは可能です。詳細は文書化されていません。

于 2012-04-06T03:02:54.403 に答える