Flash for Mobile
携帯やPSPでFlashを動かす
これからの、携帯アプリの可能性を探る!
・携帯端末用Flashコンテンツの開発・携帯3キャリア、PSP、iriver U10・E10
・Flash Lite2.0対応
|
※在庫があれば上記サイトで
入手できます。 | |
■ 本書について
はじめてこの本の執筆を依頼されたときは、正直この執筆を受けるのはどうしようかと思いました。というのも、僕自身Flash Liteで開発した経験は少なく、何よりFlash Liteでできることは、そんなにないんじゃないかと思っていました。僕たちのような技術をメインに仕事をしているものにとって、新しい技術をどんどん使って作品を作るのは、作品づくりの楽しみの1つです。執筆についても同じようなことがいえます。せっかく書くのだからみんなの知らないことを書きたい、自分が挑戦できるものを素材にしたいというのが僕たちの純粋な気持ちです。そういう意味では、このFlash Liteについての本はそういったことができるのだろうかという疑問が少しありました。
Flash Liteというと、Flash Lite 1.1にバージョンアップされてから、外部データを読み込んで動的にコンテンツを表示できたりと、少しずつ進化しているイメージはあります。ただ、携帯端末用のFlashというとまだアニメーションの要素が強く、実案件の開発でも「アニメーションをうまくみせる」「動作を重くしない」ということがメインの目的になってしまい、技術者にとってはそれほどおもしろくないイメージがありました。
では、どうしてこの仕事をやろうかと思ったかというと、それは技術的な側面で挑戦できそうだと思ったよりは、Flashの新しい使い方を模索できるのではと思ったからです。 Flash Lite 2.0ではActionScript 2.0が使用でき、XMLの読み込みも可能になり、現在Web上のFlashを開発している手法とほぼ同じように開発できるようになりました。
もちろんそれはとても重要なことですが、いままでデスクトップのコンピュータ上でしか動かせなかったFlashコンテンツを外に持ち出したときにどのように活用できるかが、今後もっと重要になっていくのではないかと思ったからです。コンテンツの内容を考える際に、コンテンツを使用する端末が「いつ使われるか」「どこで使われるか」「どのくらい頻繁に使われるか」を考えることが、コンテンツの中身と同じくらい重要になるということです。
今回のサンプルはFlash Liteでできることの技術的挑戦というよりは、Flashを持ち出したとき、どういったシチュエーションで使われるかという可能性への挑戦で取り組んでみました。そのため、各章のはじめに、「どういう意図でサンプルを作ったか?」「どういった可能性があるのか?」などの前文を長めに書きました。そういった背景を踏まえて各章を読んでいただければ幸いです。
2006年12月
クスール塾長 松村慎
■ 目次
- Part1 モバイルコンテンツの開発
- 1. Googleカレンダー連動スケジューラ
- スケジュールの確認をもっと便利に
- PCで入力した予定を携帯端末で見る
- GoogleカレンダーとFlash Lite 2.0 2
- 開発にあたっての問題点
- Googleカレンダー連動スケジューラの機能
- 開発にあたっての問題点
- Googleカレンダーの準備
- スケジュールの登録
- カレンダーの追加
- カレンダーの共有
- XML配信
- カレンダーの追加
- Googleカレンダー連動スケジューラに必要な技術
- Tips●Flash Lite 2.0から使えるソフトキー
- GoogleカレンダーとFlash Lite 2.0 2
- Flashでの実装
- 全体の流れを考える
- プログラムの設計
- コーディング
- XMLとは
- カレンダーからXMLを取得する
- XMLを解析する
- リストを作り日付順に並べ替える
- 日付の表示について
- Flashに表示
- キーでの操作を加える
- 検索機能を追加する
- PSP版
- 追加機能
- カレンダーからXMLを取得する
- プログラムの設計
- PCで入力した予定を携帯端末で見る
- 2.読漢─スタイリッシュ・Eラーニング
- もっとスタイリッシュに“どこでも学習”
- 「学習」が重要なキーワード
- 学習ゲームをもっとスタイリッシュに
- iriver U10で達成感のある学習ゲームを
- 読漢の概要
- 動作と画面の流れ
- コンテンツの機能
- 学習ゲームをもっとスタイリッシュに
- Flashでの実装
- コンテンツ全体で共通な部分のルールを決める
- ボタンのルールを決める
- ボタンを押したときの動作の内容を表示
- フォントの種類と使用方法
- ボタンを押したときの動作の内容を表示
- Tips●Unicodeとは
- 画面遷移を設計する
- iriver U10用Flashファイルの作成
- Flash Lite 1.1での作成
- 関数functionの代用機能 call()
- tellTarget()の使い方とパス指定の方法
- 変数を取り扱うための関数
- eval()を使った配列処理の代わりになる処理方法
- SetPersistentDataとGetPersistentData
- tellTarget()の使い方とパス指定の方法
- 動作を軽快にするチューニング作業
- 実機デバッグを快適にする方法
- コーディング
- ボタンのルールを決める
- 「学習」が重要なキーワード
- 3.携帯レシピ
- 新鮮なレシピ本を持ち歩く
- コンセプトを決める
- 「新鮮なレシピ本を持ち歩く」というコンテンツ
- 携帯レシピの概要
- 動作と画面の流れ
- 実装のポイント
- Flashでの実装
- 全体の流れを考える
- レシピの中身
- 全体の流れ
- 画面遷移
- 全体の流れ
- データ設計
- レシピのデータベースを考える
- レシピのデータを作る
- プログラムの設計
- 「更新作業の単純化」をポイントに
- 画面遷移をページとして分ける
- コーディング
- レシピのリストデータを一覧表示する
- 詳細説明の表示(外部画像のロード)
- Tips●loadMovie()の呼び出し
- 操作の流れを確認してパーツ部分を考える
- レシピのデータを順番に表示する
- タイマー機能を作る
- 携帯電話用Flashの開発で注意すること
- レシピのデータを順番に表示する
- サンプル完成
- レシピの中身
- コンセプトを決める
- 4.携帯ペット
- 待ち受け画面で育てる携帯ペット
- 携帯電話の待ち受け画面でペットを育てる?
- いつでも世話ができる携帯ぺット
- Flash Lite 2.0による待ち受け画面の可能性
- 携帯ぺットの概要
- ゲームの流れ
- 電波状況によって違ったアニメーションを表示
- 実装のポイント
- fscommand2()の記述方法
- いつでも世話ができる携帯ぺット
- Flashでの実装
- 基本設定
- パブリッシュ設定
- 画面サイズとフレームレートの設定
- デバイス設定
- 画面サイズとフレームレートの設定
- コーディング
- データ保存用のSharedObjectの設定
- 時間・日数の取得
- 電波状況によって違った動きをするキャラクターを実装する
- 日付の確認
- 時間と日にちによってペットの成長を変更する
- 外部充電されているか確認する
- 時間・日数の取得
- そのほかのポイント
- ムービークリップの構造
- 画像読み込みの注意点
- アニメーションについて
- パブリッシュ設定
- 携帯電話の待ち受け画面でペットを育てる?
- 5.じじ漬け
- PSPのポータブルゲームを作る
- PSPで何ができるか
- PSPのFlashでできること
- PSPならではのコンテンツとは
- じじ漬けの概要
- 動作と画面の流れ
- 実装のポイント
- RSSとは
- RSSは何をするものなのか
- フィードの種類
- PSPのFlashでできること
- Flashでの実装
- 実装の前に
- どの環境で開発するか
- 画面サイズとフレームレート
- RSSの読み込みと解析
- データの格納
- 穴あき記事を作る
- データ構造を確認する
- 正解の記事をqTxtとcorrectAryに保存する
- 余分な文字、記号を抜き取る
- 難易度に応じた穴あき記事(selectAry)を作成する
- 穴あきを埋める文字群(bushinAry)を作成する
- 正解の記事をqTxtとcorrectAryに保存する
- 穴あき記事を表示させる
- 画面構造を把握する
- 穴あき記事を表示させる
- 穴あき記事を埋める文字群を表示させる
- 穴あき記事を表示させる
- キー操作方法の設定
- キーの操作内容
- 十字キーへキー操作を割り当てる
- 穴あきスペースへ文字を割り当てる
- 穴あき記事から文字を削除する
- 選択文字を移動させる
- 十字キーへキー操作を割り当てる
- ゲーム結果を診断する
- そのほかの細かな実装
- PSP開発で注意すること
- メモリの使い方に注意する
- 外部データの読み込みは先にインターネットにアクセスする
- スタート時に一度画面をクリックする
- 外部データの読み込みは先にインターネットにアクセスする
- どの環境で開発するか
- PSPで何ができるか
- 6.遠隔・家のあかりチェッカー
- 遠隔操作で部屋のあかりをチェック
- 携帯電話から遠隔操作で何ができるか
- 携帯電話を使って遠隔操作で実現しそうなこと
- 遠隔操作システムの概要
- 遠隔操作システムの動作
- どんなシステムか
- PhidgetsとFlash
- Phidgetsとは
- Phidgetsとは何をするものなのか
- Phidgetsの種類
- Phidgetsの接続とセットアップ
- Phidgetsの種類
- PhidgetsとFlash
- PhidgetsとFlashをつなぐには
- Tips●XMLSocketとは
- Phidget Web serviceの起動
- PhidgetsとFlashの連携
- Phidgetsとは何をするものなのか
- Flashでの実装
- 光情報送信側のFlash構築
- Phidget Flash Libraryのファイルをコピーする
- ライブラリにコネクトする
- Phidget Interface Kitからの情報を取得する
- サーバにデータを送信する
- ライブラリにコネクトする
- サーバサイドによるデータの保存
- サーバサイドスクリプトとは
- サーバサイドスクリプトの種類
- ColdFusionによるテキストファイルの書き出し
- PHPによるテキストファイルの書き出し
- サーバサイドスクリプトの種類
- 携帯側のFlash構築
- Flash Liteでのデータのやり取り
- データの受け取りを通知する
- データをアニメーションに反映させる
- ボタンが押されるとコードを実行する仕組みを作る
- コードをまとめる
- データの受け取りを通知する
- Phidget Flash Libraryのファイルをコピーする
- 携帯電話から遠隔操作で何ができるか
- 7.お説教つきヒンジ開閉回数チェッカー
- 携帯待ち受け画面でできること
- 携帯電話の多機能化とFlash Lite
- 一日の携帯電話の開閉回数をカウントする
- Flash Lite 2.0だからできたこと
- お説教つきヒンジ開閉回数チェッカーの概要
- 実装のポイント
- 一日の携帯電話の開閉回数をカウントする
- SharedObjectについて
- SharedObjectと通常のデータベースの違い
- Flash Lite特有のSharedObject仕様
- SharedObjectの使用
- SharedObjectの初期化
- SharedObjectからのイベントの登録
- SharedObjectにデータを追加する
- SharedObjectからデータを取り出す
- SharedObjectにデータを保存する
- SharedObjectに配列、オブジェクトを保存する
- SharedObject内のすべてのデータを取り出す
- SharedObjectからのイベントの登録
- Flash Lite特有のSharedObject仕様
- Flashでの実装
- 基本設定
- パブリッシュ設定
- 画面サイズとデバイス設定
- フレームレート(fps)について
- 画面サイズとデバイス設定
- ムービークリップの構造
- ヒンジ開閉回数の取得と確認
- アニメーションとお説教コメントの連動
- 日付の取得と確認
- カウンターの更新とリセット
- サンプル完成
- パブリッシュ設定
- 携帯電話の多機能化とFlash Lite
- Part2 モバイルコンテンツ開発の基礎
- 1.モバイルコンテンツの開発にあたって
- モバイルコンテンツの開発
- モバイルコンテンツ用のFlash作成と通常のFlash作成の違い
- Flash対応の携帯端末
- Tips●そのほかの携帯端末でのFlash
- 開発環境
- CDKのダウンロード
- 動作確認
- 携帯コンテンツをFlash Professional 8でテストする
- Tips●デバイスプロファイルのアップデート
- 携帯コンテンツをiモードシュミレータ でテストする
- 実機でテストする
- 今後のモバイルコンテンツはどうなるのか
- Flash対応の携帯端末
- モバイルコンテンツ用のFlash作成と通常のFlash作成の違い
- 2. 携帯電話のFlashコンテンツ
- 携帯電話とFlash
- 携帯3キャリアによる違い
- NTT DoCoMo
- au
- SoftBank
- au
- 画面サイズの違い
- インラインモードとインタラクティブモード
- Flash Liteのバージョン
- NTT DoCoMo
- 携帯電話でのActionScript
- ActionScriptとは
- Flash Liteとは
- Flash Lite 1.0
- Flash Lite 1.0でできること
- Flash Lite 1.0のAction Script
- Flash Lite 1.0の開発
- Flash Lite 1.0のAction Script
- Flash Lite 1.1
- Flash Lite 1.1でできること
- Flash Lite 1.1のAction Script
- Flash Lite 2.0
- Flash Lite 2.0でできること
- Flash Lite 2.0のActionScript
- Flash Lite 2.0の開発
- Flash Lite 2.0のActionScript
- Flash Liteとは
- オブジェクト指向言語開発とActionScript 2.0
- オブジェクト指向言語開発について
- クラスとメソッド
- メソッドの種類
- イバントハンドラ
- プロパティ
- コンストラクタ
- 継承
- クラスを管理するクラス
- メソッドの種類
- Actionscript 2.0とは
- 型指定
- クラスを作ってみる
- クラスとメソッド
- 携帯電話のFlashコンテンツ開発において
- 携帯電話でのキー操作の制御
- 上下左右キーの使用
- テンキーの使用
- ソフトキーの使用
- マウスの使用
- テンキーの使用
- モバイルコンテンツの最適化
- アニメーションの工夫
- ビットマップファイルの活用
- フレームレートの設定
- ビットマップファイルの活用
- 上下左右キーの使用
- 携帯3キャリアによる違い
- 3.PSPのFlashコンテンツ
- PSPとFlash
- アソビが変わる
- 環境設定
- システムソフトウェアのアップデート
- Flash Playerを有効にする
- 環境設定
- PSP Flashでできること
- PSPのFlash Playerの機能
- Tips●ローカルSWFファイルのインターネットアクセス
- 使用できる主なActionScript
- XMLの読み込み
- 外部データとのやり取り
- 外部ファイルの読み込み
- 外部データとのやり取り
- Tips●PSPのメモリースティックDuo内のファイルへのアクセス
- サウンドの再生
- PSPのキー操作
- キーの割り当て
- PSPでの入力フォーム
- Tips●ローカルSWFファイルのインターネットアクセス
- PSPでの動作確認
- ファイルの転送方法
- USB経由での転送
- ファイルの再生
- ローカル上のファイルを開く
- Tips●PSPフォルダ内のファイル表示
- インターネット上のファイルを開く
- Tips●PSPコンテンツのネット接続
- PSPのFlashコンテンツの最適化
- トゥイーンアニメーションの工夫
- 複数のトゥイーンアニメーションを同時に使わない
- アルファをできるだけ使用しない
- ビットマップファイルの活用
- フレームレートの設定
- Tips●PSPコンテンツのファイルサイズ制限
- 複数のトゥイーンアニメーションを同時に使わない
- アソビが変わる
- 4.iriver端末のFlashコンテンツ
- iriver U10とFlash
- iriver U10とは
- iriver U10とFlash
- Tips●キーワードはコントローラ!?
- iriver U10でできること
- 画面サイズ
- 入力インターフェイス
- コンテンツのファイルサイズ
- フレームレート
- フォント・文字コード
- サウンド機能
- ネットワーク機能
- 外部データの読み込み
- 入力インターフェイス
- iriver U10のFlash Playerの独自機能
- 端末ローカル領域へのデータ保存
- 保存されている画像ファイル情報の利用
- 音声ボリュームの操作
- 描画クオリティの操作
- 保存されている画像ファイル情報の利用
- iriver U10とFlash
- iriver U10のFlashコンテンツ開発において
- モバイルデバイスプロファイル
- デバイスプロファイルのインストール
- 動作確認
- プレビュー画面で確認する
- 実機で確認する
- リソースについて
- iriver E10におけるFlashコンテンツ開発
- iriver U10とは
- Appendix
- モバイルActionScript関連資料
- Videoオブジェクトチュートリアル
- 索引