Flash Lite2.0 開発事はじめ

つい3日前くらいまで、自分がFlash Lite2.0を触ることになるとは思っていなかったんですが 仕事で開発することになったので、メモ。

まずここから「Flash Professional 8 用 Flash Lite 2 アップデート」をダウンロードして Flash Professional 8で、Flash Lite2.0を開発できるようにしておきます。 http://www.adobe.com/jp/support/flash/downloads.html

それからLite2.0の情報を集めます。 http://www.dango-itimi.com/blog/archives/2006/000912.html http://www.trick7.com/blog/flash_lite/ この辺のブログが参考になりました。

各端末の情報とか ソフトバンク端末情報 ドコモ端末情報 au端末情報 で、自分でマニュアルから調べたLite2.0特有の事項は

  1. 関数内ではdeleteしてもメモリ解放は行われないその場合、変数にnullを与えることで、ガベージコレクションから消える。
  2. コンパイル時にSWFのファイルを削減するためにクラスを除外できる。
  3. ヒープメモリは各デバイスに依存する。

という感じ。

で、今回僕は1機だけ実機を用意できたのですが、すべての人が実機を用意できるわけじゃないので IDE上の「デバイスエミュレーション」が鍵になるのですが、デフォルトでは全然使えるものがないので 自分で用意しました。

僕の場合SoftBank系だけカバーすれば良かったので 画面解像度別に

  1. QVGA
  2. VGA
  3. WQVGA
  4. QVGA

のSWF表示領域を調べて(僕はクライアントさんから教えてもらった)設定ファイルを作ります。 設定ファイルはここにおいておきますね。

Flash Lite2.0 デバイス設定ファイル

Flash8をインストールしたディレクトリの 「Flash 8/ja/Configuration/Mobile/Devices/」 に放り込んでください。 設定ファイル自体シンプルなので、画面解像度と名前くらいなら簡単に作れます。

fl2_070217_01.png

きっとこんな感じになるでしょう。

ついでに、僕がつくった便利クラスも 対して便利なわけでなく、fscommand2とか書きたくなかっただけですが・・。 特に「getScreenType()」は現在のSoftBank用に作ったメソッドで 他のキャリアや今後も使える保証は全然ありません。

[as] /** * デバイス用便利クラス * デバイス操作に使える静的メソッド群 * @author Mitsuru Hagamitsuru.haga@gmail.com * @version 2007/02/16 17:36 */ class DeviceUtil {

public static var QVGA:String = ‘QVGA’; public static var VGA:String = ‘VGA’; public static var WQVGA:String = ‘WQVGA’; public static var WVGA:String = ‘WVGA’;

/** * デバイスのモデルIDを取得する * @return */ public static function getDevice():String{ fscommand2(“GetDevice”, ‘device‘); return _level0.device; }

/** * レンダリングに使用する表示領域のサイズを設定します。 */ public static function setFullScreen():Number{ return fscommand2(“FullScreen”, true); }

/** * 現在使用できるヒープメモリの量をキロバイトで返します。 */ public static function getFreeMemory():Number{ return fscommand2(“GetFreePlayerMemory”); }

/** * 割り当てられたヒープメモリの合計量をキロバイトで返します * @return */ public static function getTotalMemory():Number{ return fscommand2(“GetTotalPlayerMemory”); }

/** * 画面の解像度を取得する * @return {x:Number, y:Number} */ public static function getScreenResolution():Object{ return { x:System.capabilities.screenResolutionX, y:System.capabilities.screenResolutionY }; } /** * スクリーンタイプを取得する静的メソッド * どのタイプにも当てはまらない場合はQVGAとして返す * SoftBank用(07/02/16現在) * @return String スクリーンタイプを表す文字列 */ public static function getScreenType():String{ var size:Object = getScreenResolution(); var isQVGA:Boolean = size.x == 236 && size.y == 261; var isWQVGA:Boolean = size.x == 240 && size.y == 350; var isVGA:Boolean = size.x == 480 && size.y == 540; var isWVGA:Boolean = size.x == 236 && size.y == 341; return ( isQVGA ) ? QVGA : ( isVGA ) ? VGA : ( isWQVGA ) ? WQVGA : ( isWVGA ) ? WVGA : QVGA; } }

[/as]

関連記事

  1. 思いつきメモ
  2. 複数のフラグチェック
  3. 文字列からクラスインスタンスを生成する(Function.applyで)
  4. ActionScript3とProcessingの勉強2
  5. MTASC
Posted in actionscript2.0, flash, flash lite2.0, programing at 2月 17th, 2007. Trackback URI: trackback

No Responses to “Flash Lite2.0 開発事はじめ”

Leave a Reply