APIを使ったネイティブ拡張ライブラリの作成方法を説明します。APIを使って開発するには、下記のjarファイルが必要になります。HOME/lib/android/FlashRuntimeExtensions.jarjarファイルには、ネイティブ拡張を作成するためのクラスやインターフェイスが定義されています。リファレンス(英語)を参照ください。APIのサンプルとして、Androidのバイブレーター機能を実行させるネイティブ拡張ライブラリを作成していきます。Androidプロジェクト作成まず、Eclipseを使用してAndroidプロジェクトを作成します。Project]ウィザードを開きます。2.3.3」を選択します。アプリケーション情報を入力します。アプリケーション名を「VibrateANE」として[終了]ボタンをクリックし、プロジェクトを作成します。APIの「FlashRuntimeExtensions.jar」をビルドパスに指定します。これで開発環境が整います。ネイティブ拡張関数クラスを作成プラットフォームの機能にアクセスするロジックを記述するためには、com.adobe.fre.FREFunctionを実装したネイティブ拡張関数クラスを実装します。ネイティブ拡張関数クラスとは、ActionScript側からネイティブ拡張コンテキスト経由で呼び出すことができるクラスを示します。実装するのは、call関数です。この関数の中にロジックを記述します。ActionScriptにデータを返したい場合は、FREObjectに変換して返り値にします。作成例サンプルファイルでは、call関数の中でAndroidのバイブレーター機能を呼び出す処理を実装しています。}}ネイティブ拡張コンテキストクラスを実装ネイティブ拡張関数をネイティブ拡張コンテキストに登録するため、com.adobe.fre.FREContextクラスを継承してネイティブ拡張コンテキストクラスを実装します。実装する関数については、次の表のようになります。ネイティブ拡張コンテキストに登録するネイティブ拡張関数マップを返す。作成例サンプルファイルでは、VibrateNowFunctionネイティブ拡張関数クラスのインスタンスをVibrateNowという関数名で登録しています。これによって、ActionScriptからVibrateNowをキーにして、VibrateNowFunctionネイティブ拡張関数を呼び出すことができます。}}ネイティブ拡張クラスを作成ネイティブ拡張コンテキストを管理するため、com.adobe.fre.FREExtensionインターフェイスを実装したネイティブ拡張クラスを作成する必要があります。このクラスは、ネイティブ拡張ごとに1つ作成します。ネイティブ拡張が初期化されるときに呼びだされる関数。ネイティブ拡張コンテキストを生成するための関数。ネイティブ拡張が破棄されるときに呼びだされる関数。ActionScriptのExtensionContext.dispose()を呼び出すことで実行される作成例サンプルファイルでは、createContext関数の戻り値にVibratorContextクラスのインスタンスが返るように実装しています。}}jarファイル作成ソースが作成できたら、コンパイルしてjarファイルを作成します。作成例サンプルファイルでは、Androidプロジェクトのコンテキストメニューの[エクスポート]より、VibratorANE.jarをエクスポートしています。C#を使ったアプリケーションソフトウェア設計と開発を中心に仕事をしています。圧縮・解凍UNIX基本講座@CodeZine『CodeZine(コードジン)』の公式アカウントです。【NEW】デブスト2019デブサミ2019福岡・関西デブサミ2019夏デブスト関西デブサミ2019×ログインEメールパスワード※旧SEメンバーシップ会員の方は、同じ登録情報(Eメール&パスワード)でログインいただけます。イラストの無断転載を禁じます。記載されているロゴ、システム名、製品名は各社及び商標権者の登録商標あるいは商標です。