九天社の跡地です…
2001.8.29-2008.6.10


Flash for Mobile

 表紙

携帯やPSPでFlashを動かす

これからの、携帯アプリの可能性を探る!

・携帯端末用Flashコンテンツの開発
・携帯3キャリア、PSP、iriver U10・E10
・Flash Lite2.0対応


※在庫があれば上記サイトで
 入手できます。

[著]クスール
[監]

[価格]3,360 円(税込)
[判型]B5変型/272頁
[初版]2006/12/01 
[ISBN]4-86167-142-6

 本書について

 はじめてこの本の執筆を依頼されたときは、正直この執筆を受けるのはどうしようかと思いました。というのも、僕自身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から使えるソフトキー

Flashでの実装

全体の流れを考える

プログラムの設計

コーディング

XMLとは
カレンダーからXMLを取得する
XMLを解析する
リストを作り日付順に並べ替える
日付の表示について
Flashに表示
キーでの操作を加える
検索機能を追加する
PSP版
追加機能

2.読漢─スタイリッシュ・Eラーニング

もっとスタイリッシュに“どこでも学習”

「学習」が重要なキーワード

学習ゲームをもっとスタイリッシュに
iriver U10で達成感のある学習ゲームを

読漢の概要

動作と画面の流れ
コンテンツの機能

Flashでの実装

コンテンツ全体で共通な部分のルールを決める

ボタンのルールを決める
ボタンを押したときの動作の内容を表示
フォントの種類と使用方法

Tips●Unicodeとは

画面遷移を設計する

iriver U10用Flashファイルの作成

Flash Lite 1.1での作成

関数functionの代用機能 call()
tellTarget()の使い方とパス指定の方法
変数を取り扱うための関数
eval()を使った配列処理の代わりになる処理方法
SetPersistentDataとGetPersistentData

動作を軽快にするチューニング作業

実機デバッグを快適にする方法

コーディング

3.携帯レシピ

新鮮なレシピ本を持ち歩く

コンセプトを決める

「新鮮なレシピ本を持ち歩く」というコンテンツ

携帯レシピの概要

動作と画面の流れ
実装のポイント

Flashでの実装

全体の流れを考える

レシピの中身
全体の流れ
画面遷移

データ設計

レシピのデータベースを考える
レシピのデータを作る

プログラムの設計

「更新作業の単純化」をポイントに
画面遷移をページとして分ける

コーディング

レシピのリストデータを一覧表示する
詳細説明の表示(外部画像のロード)

Tips●loadMovie()の呼び出し

操作の流れを確認してパーツ部分を考える
レシピのデータを順番に表示する
タイマー機能を作る
携帯電話用Flashの開発で注意すること

サンプル完成

4.携帯ペット

待ち受け画面で育てる携帯ペット

携帯電話の待ち受け画面でペットを育てる?

いつでも世話ができる携帯ぺット
Flash Lite 2.0による待ち受け画面の可能性

携帯ぺットの概要

ゲームの流れ
電波状況によって違ったアニメーションを表示

実装のポイント

fscommand2()の記述方法

Flashでの実装

基本設定

パブリッシュ設定
画面サイズとフレームレートの設定
デバイス設定

コーディング

データ保存用のSharedObjectの設定
時間・日数の取得
電波状況によって違った動きをするキャラクターを実装する
日付の確認
時間と日にちによってペットの成長を変更する
外部充電されているか確認する

そのほかのポイント

ムービークリップの構造
画像読み込みの注意点

アニメーションについて

5.じじ漬け

PSPのポータブルゲームを作る

PSPで何ができるか

PSPのFlashでできること
PSPならではのコンテンツとは

じじ漬けの概要

動作と画面の流れ
実装のポイント

RSSとは

RSSは何をするものなのか
フィードの種類

Flashでの実装

実装の前に

どの環境で開発するか
画面サイズとフレームレート

RSSの読み込みと解析

データの格納

穴あき記事を作る

データ構造を確認する
正解の記事をqTxtとcorrectAryに保存する
余分な文字、記号を抜き取る
難易度に応じた穴あき記事(selectAry)を作成する
穴あきを埋める文字群(bushinAry)を作成する

穴あき記事を表示させる

画面構造を把握する
穴あき記事を表示させる
穴あき記事を埋める文字群を表示させる

キー操作方法の設定

キーの操作内容
十字キーへキー操作を割り当てる
穴あきスペースへ文字を割り当てる
穴あき記事から文字を削除する
選択文字を移動させる

ゲーム結果を診断する

そのほかの細かな実装

PSP開発で注意すること

メモリの使い方に注意する
外部データの読み込みは先にインターネットにアクセスする
スタート時に一度画面をクリックする

6.遠隔・家のあかりチェッカー

遠隔操作で部屋のあかりをチェック

携帯電話から遠隔操作で何ができるか

携帯電話を使って遠隔操作で実現しそうなこと

遠隔操作システムの概要

遠隔操作システムの動作
どんなシステムか

PhidgetsとFlash

Phidgetsとは

Phidgetsとは何をするものなのか
Phidgetsの種類
Phidgetsの接続とセットアップ

PhidgetsとFlash

PhidgetsとFlashをつなぐには

Tips●XMLSocketとは

Phidget Web serviceの起動
PhidgetsとFlashの連携

Flashでの実装

光情報送信側のFlash構築

Phidget Flash Libraryのファイルをコピーする
ライブラリにコネクトする
Phidget Interface Kitからの情報を取得する
サーバにデータを送信する

サーバサイドによるデータの保存

サーバサイドスクリプトとは
サーバサイドスクリプトの種類
ColdFusionによるテキストファイルの書き出し
PHPによるテキストファイルの書き出し

携帯側のFlash構築

Flash Liteでのデータのやり取り
データの受け取りを通知する
データをアニメーションに反映させる
ボタンが押されるとコードを実行する仕組みを作る
コードをまとめる

7.お説教つきヒンジ開閉回数チェッカー

携帯待ち受け画面でできること

携帯電話の多機能化とFlash Lite

一日の携帯電話の開閉回数をカウントする

Flash Lite 2.0だからできたこと

お説教つきヒンジ開閉回数チェッカーの概要

実装のポイント

SharedObjectについて

SharedObjectと通常のデータベースの違い

Flash Lite特有のSharedObject仕様

SharedObjectの使用

SharedObjectの初期化
SharedObjectからのイベントの登録
SharedObjectにデータを追加する
SharedObjectからデータを取り出す
SharedObjectにデータを保存する
SharedObjectに配列、オブジェクトを保存する
SharedObject内のすべてのデータを取り出す

Flashでの実装

基本設定

パブリッシュ設定
画面サイズとデバイス設定
フレームレート(fps)について

ムービークリップの構造

ヒンジ開閉回数の取得と確認

アニメーションとお説教コメントの連動

日付の取得と確認

カウンターの更新とリセット

サンプル完成

Part2 モバイルコンテンツ開発の基礎

1.モバイルコンテンツの開発にあたって

モバイルコンテンツの開発

モバイルコンテンツ用のFlash作成と通常のFlash作成の違い

Flash対応の携帯端末

Tips●そのほかの携帯端末でのFlash

開発環境

CDKのダウンロード

動作確認

携帯コンテンツをFlash Professional 8でテストする

Tips●デバイスプロファイルのアップデート

携帯コンテンツをiモードシュミレータ でテストする

実機でテストする

今後のモバイルコンテンツはどうなるのか

2. 携帯電話のFlashコンテンツ

携帯電話とFlash

携帯3キャリアによる違い

NTT DoCoMo
au
SoftBank

画面サイズの違い

インラインモードとインタラクティブモード

Flash Liteのバージョン

携帯電話での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.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の開発

オブジェクト指向言語開発とActionScript 2.0

オブジェクト指向言語開発について

クラスとメソッド
メソッドの種類
イバントハンドラ
プロパティ
コンストラクタ
継承
クラスを管理するクラス

Actionscript 2.0とは

型指定
クラスを作ってみる

携帯電話のFlashコンテンツ開発において

携帯電話でのキー操作の制御

上下左右キーの使用
テンキーの使用
ソフトキーの使用
マウスの使用

モバイルコンテンツの最適化

アニメーションの工夫
ビットマップファイルの活用
フレームレートの設定

3.PSPのFlashコンテンツ

PSPとFlash

アソビが変わる

環境設定

システムソフトウェアのアップデート
Flash Playerを有効にする

PSP Flashでできること

PSPのFlash Playerの機能

Tips●ローカルSWFファイルのインターネットアクセス

使用できる主なActionScript

XMLの読み込み
外部データとのやり取り
外部ファイルの読み込み

Tips●PSPのメモリースティックDuo内のファイルへのアクセス

サウンドの再生

PSPのキー操作

キーの割り当て
PSPでの入力フォーム

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 E10におけるFlashコンテンツ開発

Appendix

  1. モバイルActionScript関連資料
  2. Videoオブジェクトチュートリアル

索引