2012-09-17

flashdevelop使用ANE


什麼是ANE?

ANE = AIR Native extensions 

簡而言之就是讓你的AIR程式能夠執行actionscript以外的語言。

網路上可以找到很多別人已做好的ANE檔。

最基本的就是如何使用這個問題,這邊介紹如何在flashdevelop使用ANE。




這邊假設已經選擇使用 AIR Mobile AS3 App建立專案

開啟檔案
bin\Packager.bat

修改這行
call adt -package -target %TYPE%%TARGET% %OPTIONS% %SIGNING_OPTIONS% "%OUTPUT%" "%APP_XML%" %FILE_OR_DIR%

改為這樣
call adt -package -target %TYPE%%TARGET% %OPTIONS% %SIGNING_OPTIONS% "%OUTPUT%" "%APP_XML%" %FILE_OR_DIR% -extdir lib


這邊以android裝置的震動功能為範例(下載)

將ANE檔案放入lib資料夾



 按右鍵加入library
按右鍵options
 選external library

 開啟AIR屬性

 選extensions
 加入extension id後,按OK


 AS部分

         private var vibe:Vibration;
        /**
         * 震動
         * @param    time    時間(毫秒 = 1/1000秒)
         *
         */
        private function vibration(time:int = 50):void
        {
            try
            {
                if (Vibration.isSupported)
                {  
                    if(vibe == null )
                        vibe = new Vibration();
                    vibe.vibrate(time);
                    //震動
                }
            }
            catch (err:Error)
            {
                // 震動失敗
            }
        }


 修改application.xml

 加入權限
 <uses-permission android:name="android.permission.VIBRATE" />


修改Run.bat

:target
::goto desktop
::goto android-debug

goto android-test
::goto ios-debug
::goto ios-test



完成 -> test project

參考資料
Native extensions for Adobe AIR



1 則留言:

  1. 謝謝你的一步一步教程,我找到我遺漏的地方了,
    修改application.xml
    加入權限


    感謝!

    回覆刪除