Ad
1: 2015-05-26 (火) 16:09:49 njf ソース バックアップ No.1 を復元して編集
With "attach" plugin. (Created empty)
現: 2015-05-27 (水) 01:32:05 njf ソース 編集
Deleted an attach file: pb_profile.png at 2015-05-27 (水) 00:27:35
Line 1: Line 1:
 +デバイスによって処理を変えるのは、出来るだけ「[[コードでデバイスの判定]]」の方法で同一コードで分岐させた方が良い。
 +とはいえ、ANEを利用する場合など、それが無理ならパブリッシュの設定で実際に書き出されるコードを切り替えることが出来る。
 +
 +
 +&ref(pb_profile_0.png,mw:480,mh:360);
 +
 +パブリッシュ設定からプロファイルの横の歯車アイコンで、プロファイルを必要なデバイスの数だけ複製して名前をつける。
 +たとえば「iOS」「Android」「Web」などである。
 +
 +それぞれターゲットを「Air for iOS」「Air for Android」「Flash Player」などにしておくと今後プロファイルを切り替えるだけでターゲットやその他の設定が切り替えられる
 +
 +つぎに「AcrionScript 3.0の詳細設定」で条件付きコンパイル定数を定義する。
 +たとえば、
 +
 + CONFIG::NJF_ANDROID true
 + CONFIG::NJF_WEB false
 +
 +と定義したとする。
 +
 +&ref(compile_const.png,mw:480,mh:360);
 +
 +こうすると、スクリプトで
 +
 + CONFIG::NJF_WEB {
 +    trace("web!");
 + }
 + CONFIG::NJF_ANDROID {
 +  trace("android!");
 + }
 +
 +と書くと、「android!」と出力される。「trace("web!")」の方はパブリッシュされたswfから完全に取り除かれている。
 +つまりC系言語のマクロのような物である。
 +
 +この方法で作成したプロファイル毎に条件付きコンパイル定数を定義すれば、各デバイス毎に処理を変えることが出来る。
 +
 +条件付きコンパイル定数によるブロックはかなり自由に設定でき、括弧を省略すると直後の定義に対して適用される。たとえば以下のように書く事も出来る。
 +
 + CONFIG::NJF_WEB
 + public function test():void{
 +    trace("web!");
 + }
 + 
 + CONFIG::NJF_ANDROID
 + public function test():void{
 +    trace("android!");
 + }
 +
 +上と同じ設定の下では、test関数の実行結果は「android!」である。


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード印刷に適した表示   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom Powered by xpWiki
Counter: 2001, today: 1, yesterday: 0
MenuBar
広告

ログイン

ユーザー名:


パスワード:





パスワード紛失

Portuguese | English | German | Greek | Japanese | Korean | Russian | T-Chinese top
NJF