DanboPush + Flash CS6・AIR for iOSの消音→ANE(2)

DanboPush + Flash CS6・AIR for iOSの消音→ANE(1)からの続き

はい、ドーン!

memo.393 さんのこちらの記事。

[AS][iPhone]AIR for iOSにおいてANEファイルを含めたビルドをするには、”mac版”のFlashBuilder4.6一択という残念な現実(GUIを頼りにする場合)
[iPhone][AIR]FlashDevelopにてaneを含んだiPhoneアプリのビルド方法

ありがたやーーーーー(-人-)ほくほく
さっそく参考にさせていただいて、Flash CS6でANEを使用してみた。
(ANE(ネイティブ拡張)→Adobe AIR 用ネイティブ拡張の使用

**************************
1・ANEをダウンロードする
**************************
使用するファイル:SilentSwitch.ane

ANEはこちらでダウンロード。使わせていただく。
ANE-Silent-Switch

ダウンロードすると(2012.08.07時点では)StickSports-ANE-Silent-Switch-b70e35b.zipと言うファイルが出現。解凍すると同じ名前のフォルダができるので、その中にあるファイルを使用する。

StickSports-ANE-Silent-Switch-b70e35bフォルダ内
bin/SilentSwitch.ane

ANE-Silent-Switch:ANEファイルへのパス

**************************
2・ANEを追加する
**************************
Flash CS6 メニュー → ファイル → ActionScript設定 → ライブラリパス で、新規パスの追加(+のアイコン)→ ネイティブ拡張(ANE)ファイルを参照 → ダウンロードしたSilentSwitch.ane を選択

ANE-Silent-Switch:CS6の設定:ANEを追加

**************************
3・ActionScriptを記述する
**************************
使い方はとっても簡単で、この二行を追加するとiPhoneで消音ができるようになる。
[as3]//SilentSwitch.aneで消音
import com.sticksports.nativeExtensions.SilentSwitch;
SilentSwitch.apply();
[/as3]


ただ、これだけだとマルチタスク対応になったiOS4以降、バックグラウンドから復帰した時に音がまた鳴ってしまうようなので、必要であれば復帰した時にも実行するようにする。

[as3]//バックグラウンドから復帰時に実行
import flash.desktop.NativeApplication;
NativeApplication.nativeApplication.addEventListener(Event.ACTIVATE , onActivate);
private function onActivate(e:Event):void{
SilentSwitch.apply();
}
[/as3]

**************************


これで悩み解決。ANEサイコー!

memo.393さんが紹介されているGameCenterのANEも入れてみたいと思う。GameCenterやりたかったんだ…

MUSHIKAGO APPS MEMOさんの
iOS : Flash Proでネイティブ拡張(ANE)に挑戦
ANE : “ld warning: unexpected srelocation type 9″ なんてエラー出たらココ確認
も参考にさせていただきました。

ありがたやーーー(-人-)

と言う訳で、DanboPush少しがんばってみる。

AUGMへ参加される方、ぜひぜひ?一度遊んでみてください。