110
~Air for Android で簡単にアプリつくれます!~ 1 アメーバピグ for Androidができるまで 資料アップ先お知らせします @modeplus 2010124日土曜日

1204 fitc2010

Embed Size (px)

Citation preview

Page 1: 1204 fitc2010

~Air for Android で簡単にアプリつくれます!~

1

アメーバピグ for Androidができるまで

資料アップ先お知らせします@modeplus

2010年12月4日土曜日

Page 2: 1204 fitc2010

アジェンダ1.アメーバピグの紹介

2.検証、Androidでピグは動くの?

3.デザインについて

4.機能の実装について

5.これからの展開と課題

2

資料アップ先お知らせします@modeplus

2010年12月4日土曜日

Page 3: 1204 fitc2010

1.アメーバピグの紹介

5.これからの展開と課題

4.機能の実装について

3.デザインについて

2.ワークフローについて

1.アメーバピグの紹介

2010年12月4日土曜日

Page 4: 1204 fitc2010

<アメーバピグの紹介> アメーバピグとは?自分ソックリなキャラクターであるピグを作れる 他のユーザーとのチャット、ゲーム等でコミュニケーションを楽しめるサービス 現在、500万人を超えるユーザー数

2010年12月4日土曜日

Page 5: 1204 fitc2010

<アメーバピグの紹介> アメーバピグとは?自分ソックリなキャラクターであるピグを作れる 他のユーザーとのチャット、ゲーム等でコミュニケーションを楽しめるサービス 現在、500万人を超えるユーザー数

2010年12月4日土曜日

Page 6: 1204 fitc2010

<アメーバピグの紹介> PC版アメーバピグ2009年2月19日サービス開始

開発体制 約50人 (デザイナー26、デベロッパー9、エンジニア9、ディレクタ運営管理8)

FlashPlayer9以上で動作

2010年12月4日土曜日

Page 7: 1204 fitc2010

<アメーバピグの紹介> Android版アメーバピグ2010年11月1日リリース開発体制 5人 (デザイナー1、デベロッパー2、ディレクター運営管理2)

Android 2.2で動作

業務時間外でひっそりとスタート

2010年12月4日土曜日

Page 8: 1204 fitc2010

ワークフロー

開発期間 1ヶ月半

業務時間外で

2010年12月4日土曜日

Page 9: 1204 fitc2010

<ワークフローについて> 効率的なワークフロー

デザイン確定後、変更や修正が多発する。デベロッパーの業務が巻き戻る。

ラフ段階からMockを作ってデザイン確認は実機でする。

開発のなやみ

解決策

2010年12月4日土曜日

Page 10: 1204 fitc2010

<ワークフローについて> 初期のモック

これで確認を進めます

2010年12月4日土曜日

Page 11: 1204 fitc2010

<ワークフローについて> 初期のモック

これで確認を進めます

2010年12月4日土曜日

Page 12: 1204 fitc2010

<ワークフローについて> シンプルな分担

DirectorDeveloper Designer

最小人数だからこそ

役割は明確に

2010年12月4日土曜日

Page 13: 1204 fitc2010

<ワークフローについて> シンプルな分担

2010年12月4日土曜日

Page 14: 1204 fitc2010

<ワークフローについて> シンプルな分担

進捗進捗

仕様

デザイン

Director

企画

Developer

Flash制作

Designer

UI制作

2010年12月4日土曜日

Page 15: 1204 fitc2010

<ワークフローについて> シンプルな分担

進捗進捗

仕様

デザイン

Director

企画

Developer

Flash制作

Designer

UI制作

徐々にデザインが完成

2010年12月4日土曜日

Page 16: 1204 fitc2010

<ワークフローについて> チェックについて

誰に確認をとるのか?

2010年12月4日土曜日

Page 17: 1204 fitc2010

<ワークフローについて> デザインができるまで

デザインチーム確認

プロジェクトチーム確認

アートディレクター確認

プロデューサー確認

社長確認

2010年12月4日土曜日

Page 18: 1204 fitc2010

<ワークフローについて> デザインができるまで

デザインチーム確認

プロジェクトチーム確認

アートディレクター確認

プロデューサー確認

社長確認

全部クリアして晴れて開発開始!

OK!

2010年12月4日土曜日

Page 19: 1204 fitc2010

<ワークフローについて> 通常

五人の責任者

プロジェクトチームリーダー

デザインチームリーダー

クリエイティブディレクター

アートディレクター社長 改革!

2010年12月4日土曜日

Page 20: 1204 fitc2010

今回は違う方法をとりました。

2010年12月4日土曜日

Page 21: 1204 fitc2010

<ワークフローについて> 今回

50名のユーザーレビュー

アイコンが見づらい

ペットを飼いたい

着せ替えできないの?

スクロールの反応が悪い

ボタンが押せない

ユーザー

目線の評価獲

得!

3、4回に分け「評価、修正」を繰り返し完成度を高める

2010年12月4日土曜日

Page 22: 1204 fitc2010

実機で確認すると、誰でもイメージしやすい

通常の確認系統をレビュー会で補完

ユーザー評価を獲得することでデザインや操作性に問題が少ない

<ワークフローについて> ワークフローのまとめ

2010年12月4日土曜日

Page 23: 1204 fitc2010

2. 検証、Androidでピグは動くの?

5.これからの展開と課題

4.機能の実装について

3.デザインについて

2.Androidでピグは動くのか?

1.アメーバピグの紹介

2010年12月4日土曜日

Page 24: 1204 fitc2010

そもそも、Androidで動くの?Android 2.2から Flash Player 10.1が動くデバイスはNexus Oneを用意ブラウザでpigg.ameba.jpを確認

2010年12月4日土曜日

Page 25: 1204 fitc2010

結果

動きますが、操作が難しい

2010年12月4日土曜日

Page 26: 1204 fitc2010

操作が難しいアドレスバーが邪魔ボタン小さすぎて押せないチャットするとキーボードが閉じない

2010年12月4日土曜日

Page 27: 1204 fitc2010

解消のため、いろいろやってみました

フルスクリーンモード jsポップアップ

どれも、問題解決にならず

2010年12月4日土曜日

Page 28: 1204 fitc2010

そこで

AIR for Androidで作り直し

2010年12月4日土曜日

Page 29: 1204 fitc2010

AIR for Androidで移植した感想

機能の移植は簡単!!なので

デザインにこだわります

2010年12月4日土曜日

Page 30: 1204 fitc2010

3.デザインについて

5.これからの展開と課題

4.機能の実装について

3.デザインについて

2.Androidでピグは動くのか?

1.アメーバピグの紹介

2010年12月4日土曜日

Page 31: 1204 fitc2010

<デザインについて> デバイスの違い

1024 x 768 (XGA) 以上 800 x 480 (WVGA)854 x 480 (FWVGA)

11 インチ 以上 3.7 ~ 4.0 インチ

マウス, キーボードマルチタッチスクリーン,

加速度センサ, カメラ, マイク, GPS, キーボード

スクリーン解像度

スクリーンサイズ

入力UI

PC(アメーバピグ推奨環境)

Android(Galaxy S, Desire, Nexus One, Droid 2)

2010年12月4日土曜日

Page 32: 1204 fitc2010

<デザインについて> 画面サイズ

480px

800px使用ソフト Adobe Fierworks CS5

2010年12月4日土曜日

Page 33: 1204 fitc2010

<デザインについて> デザインをAndroid用に最適化する

表示するものは

少なく大きく

2010年12月4日土曜日

Page 34: 1204 fitc2010

機能を絞る主要な機能をアイコン化 ボタンと文字は大きくメニューを開閉式に変更ポップアップは使わない多機能なUIを簡略化ピンチイン/アウトジェスチャーを追加

デザインをAndroid用に最適化する<デザインについて> デザインをAndroid用に最適化する

2010年12月4日土曜日

Page 35: 1204 fitc2010

<デザインについて> PCピグのボタン数

2010年12月4日土曜日

Page 36: 1204 fitc2010

<デザインについて> Androidピグのボタン数

9つの機能に絞った

2010年12月4日土曜日

Page 37: 1204 fitc2010

チャット

アクション

来訪アラーム

ツール

<デザインについて> 主要機能のアイコン化

2010年12月4日土曜日

Page 38: 1204 fitc2010

<デザインについて> ボタンの位置決め

ピグの世界はクオータービュー

2010年12月4日土曜日

Page 39: 1204 fitc2010

<デザインについて> ボタンの位置決め

Androidでのトレースイメージ

2010年12月4日土曜日

Page 40: 1204 fitc2010

<デザインについて> ボタンの位置決め

必然的に四隅に隙間ができる

2010年12月4日土曜日

Page 41: 1204 fitc2010

<デザインについて> ボタンの位置決め

ここに最も重要な要素を配置

メニュー

アクション

きたよ

ちゃっと

2010年12月4日土曜日

Page 42: 1204 fitc2010

配置

2010年12月4日土曜日

Page 43: 1204 fitc2010

配置

2010年12月4日土曜日

Page 44: 1204 fitc2010

<デザインについて> 実際のイメージ

使用ソフト Adobe Fierworks CS5

2010年12月4日土曜日

Page 45: 1204 fitc2010

ボタンのタテ配置は間隔を十分とる。指の先でミスタッチする可能性が高い。

<デザインについて> 配置での注意点

×ヨコ配置 タテ配置

2010年12月4日土曜日

Page 46: 1204 fitc2010

<デザインについて> 文字とボタンを大きく

2010年12月4日土曜日

Page 47: 1204 fitc2010

<デザインについて> 文字とボタンを大きく

2010年12月4日土曜日

Page 48: 1204 fitc2010

<デザインについて> ボタンのサイズと余白

使用ソフト Adobe Fierworks CS5

75px

75px

115px

115px

20px

ボタン作りで考慮すべきポイント余白は多めにとる

2010年12月4日土曜日

Page 49: 1204 fitc2010

<デザインについて> リストの縦幅

リストの縦幅はアイコンと同じ75px

75px

使用ソフト Adobe Fierworks CS5

2010年12月4日土曜日

Page 50: 1204 fitc2010

<デザインについて> 既存ボタンのリサイズ

使用ソフト Adobe Fierworks CS5

2010年12月4日土曜日

Page 51: 1204 fitc2010

<デザインについて> 既存ボタンのリサイズ解像度の違いによるリサイズ

使用ソフト Adobe Fierworks CS5

2010年12月4日土曜日

Page 52: 1204 fitc2010

<デザインについて> 既存ボタンのリサイズ

PC 解像度の違いによるリサイズ

使用ソフト Adobe Fierworks CS5

2010年12月4日土曜日

Page 53: 1204 fitc2010

<デザインについて> 既存ボタンのリサイズ

PC 

Android 

解像度の違いによるリサイズ

使用ソフト Adobe Fierworks CS5

2010年12月4日土曜日

Page 54: 1204 fitc2010

<デザインについて> メニューを開閉式にした

2010年12月4日土曜日

Page 55: 1204 fitc2010

<デザインについて> メニューを開閉式にした

2010年12月4日土曜日

Page 56: 1204 fitc2010

<デザインについて> メニューを開閉式にした

2010年12月4日土曜日

Page 57: 1204 fitc2010

<デザインについて> メニューを開閉式にした

2010年12月4日土曜日

Page 58: 1204 fitc2010

<デザインについて> メニューを開閉式にした

2010年12月4日土曜日

Page 59: 1204 fitc2010

<デザインについて> ウィンドウを使わないようにした

2010年12月4日土曜日

Page 60: 1204 fitc2010

<デザインについて> ウィンドウを使わないようにした

2010年12月4日土曜日

Page 61: 1204 fitc2010

3. デザインを最適化する

<デザインについて> ウィンドウを使わないようにした

2010年12月4日土曜日

Page 62: 1204 fitc2010

<デザインについて> ウィンドウを使わないようにした

2010年12月4日土曜日

Page 63: 1204 fitc2010

<デザインについて> ウィンドウを使わないようにした

2010年12月4日土曜日

Page 64: 1204 fitc2010

<デザインについて> ウィンドウを使わないようにした

2010年12月4日土曜日

Page 65: 1204 fitc2010

<デザインについて> 多機能なUIを簡略化

2010年12月4日土曜日

Page 66: 1204 fitc2010

<デザインについて> 多機能なUIを簡略化

2010年12月4日土曜日

Page 67: 1204 fitc2010

<デザインについて> 多機能なUIを簡略化

2010年12月4日土曜日

Page 68: 1204 fitc2010

<デザインについて> 多機能なUIを簡略化

2010年12月4日土曜日

Page 69: 1204 fitc2010

<デザインについて> 多機能なUIを簡略化

2010年12月4日土曜日

Page 70: 1204 fitc2010

<デザインについて> ピンチイン/アウトジェスチャーを追加した

2010年12月4日土曜日

Page 71: 1204 fitc2010

<デザインについて> ピンチイン/アウトジェスチャーを追加した

2010年12月4日土曜日

Page 72: 1204 fitc2010

<デザインについて> ピンチイン/アウトジェスチャーを追加した

2010年12月4日土曜日

Page 73: 1204 fitc2010

<デザインについて> ピンチイン/アウトジェスチャーを追加した

2010年12月4日土曜日

Page 74: 1204 fitc2010

<デザインについて> ピンチイン/アウトジェスチャーを追加した

2010年12月4日土曜日

Page 75: 1204 fitc2010

<デザインについて> ピンチイン/アウトジェスチャーを追加した

2010年12月4日土曜日

Page 76: 1204 fitc2010

4.機能の実装について

5.これからの展開と課題

4.機能の実装について

3.デザインについて

2.Androidでピグは動くのか?

1.アメーバピグの紹介

2010年12月4日土曜日

Page 77: 1204 fitc2010

開発環境

• Flash Builder4• AIR SDK 2.5• AndroidSDK• Nexus One

※開発開始の9月時点での環境

2010年12月4日土曜日

Page 78: 1204 fitc2010

AIR for Androidで移植した感想

機能の移植は簡単!!

2010年12月4日土曜日

Page 79: 1204 fitc2010

なぜ、機能の移植は簡単なのか?汎用性のある設計元々、低スペックPCでも動くAIR for Androidだから

2010年12月4日土曜日

Page 80: 1204 fitc2010

<機能の移植は簡単> 汎用性のある設計元々多人数で同時開発を行うためのものが、今回移植の際うまく活用できた

各viewとMainが粗結合だったので入れ替えが楽

各プロジェクトを変更しても影響が最小になるような設計

2010年12月4日土曜日

Page 81: 1204 fitc2010

<機能の移植は簡単>  汎用性のある設計変更の範囲

2010年12月4日土曜日

Page 82: 1204 fitc2010

<機能の移植は簡単>  各viewモジュールの変更おでかけリスト

PC Android

2010年12月4日土曜日

Page 83: 1204 fitc2010

<機能の移植は簡単>  各viewモジュールの変更プロフィール

PC

Android

2010年12月4日土曜日

Page 84: 1204 fitc2010

<機能の移植は簡単>  各viewモジュールの変更ピグとも

PC

Android

2010年12月4日土曜日

Page 85: 1204 fitc2010

<機能の移植は簡単>  各viewモジュールの変更部屋

PC Android

2010年12月4日土曜日

Page 86: 1204 fitc2010

<機能の移植は簡単>  低スペックPCでも動くPC版が低スペックPCでも動くように作られていたから移植時は、パフォーマンスチューニングはしていない今後、GPUモードを試してみる

2010年12月4日土曜日

Page 87: 1204 fitc2010

<機能の移植は簡単>  AIR for Androidだから

AIRアプリとしてデスクトップ上で動く機能はほぼAndroid上で動く動作確認が楽実機を操作してのデバックもできる

2010年12月4日土曜日

Page 88: 1204 fitc2010

<機能の移植は簡単>  実際に行った作業

AIRアプリに変換プロジェクトの再作成セキュリティ周りの対応

Android用の対応コンテキストメニューマウスホイールイベント&マウスイベントデバイスボタン&バックグラウンド処理

2010年12月4日土曜日

Page 89: 1204 fitc2010

<機能の移植は簡単>  実際に行った作業

AIRアプリに変換プロジェクトの再作成セキュリティ周りの対応

Android用の対応コンテキストメニューマウスホイールイベント&マウスイベントデバイスボタン&バックグラウンド処理

2010年12月4日土曜日

Page 90: 1204 fitc2010

<AIRアプリに変換> プロジェクトの再作成actionscriptプロジェクトはFlexプロジェクト(Application type>Desktop application)で再作成

ライブラリプロジェクトはFlex Library Complier > Include Adobe AIR libraries にチェックを入れる

2010年12月4日土曜日

Page 91: 1204 fitc2010

<AIRアプリに変換> セキュリティ周りの対応Security.allowDomain()の削除loadBytes() の対応

2010年12月4日土曜日

Page 92: 1204 fitc2010

<AIRアプリに変換> セキュリティ周りの対応Security.allowDomain()は削除

main.swfがサーバーから各viewモジュールswfを読み込み操作している

AIRだとこの方法は使えないため削除apk作成時に一緒にパッケージしてセキュリティサンドボックス内に納める

2010年12月4日土曜日

Page 93: 1204 fitc2010

<AIRアプリに変換> セキュリティ周りの対応loadBytes() の対応各アイテム類は数が膨大なのと更新が頻繁なので一緒にパッケージはしない。AIRだとloadBytes()を使ってswfを読み込むことができないため allowCodeImportをtrueに設定

var context:LoaderContext = new LoaderContext();context.allowCodeImport = true;

2010年12月4日土曜日

Page 94: 1204 fitc2010

<機能の移植は簡単>  実際に行った作業

AIRアプリに変換プロジェクトの再作成セキュリティ周りの対応

Android用の対応コンテキストメニューマウスホイールイベント&マウスイベントデバイスボタン&バックグラウンド処理

2010年12月4日土曜日

Page 95: 1204 fitc2010

<Android用の対応> コンテキストメニューAndroid上で実行時にエラーになるためコンテキストメニューをカスタマイズしている場合は削除

2010年12月4日土曜日

Page 96: 1204 fitc2010

<Android用の対応> マウスホイールイベントタッチデバイスには無いのでタッチムーブイベントで対応

if(Multitouch.supportsTouchEvents) { addEventListener (TouchEvent.TOUCH_BEGIN, onTouchBegin); addEventListener (TouchEvent.TOUCH_MOVE, onTouchMove);}

2010年12月4日土曜日

Page 97: 1204 fitc2010

<Android用の対応> マウスイベントマウスイベントは変更なし マウスオーバー、ロールオーバーもタップオーバーで判定ダブルクリックもダブルタップとして判定

なので、楽でしたよと感想です

2010年12月4日土曜日

Page 98: 1204 fitc2010

<Android用の対応> デバイスボタン今回はbackボタンを無効化private function onKeyDown(event:KeyboardEvent):void { if(event.keyCode == Keyboard.BACK) { event.preventDefault(); }}

間違ってbackボタン押してアプリを閉じてしまうため

押し感のない画面とフラットなボタン

2010年12月4日土曜日

Page 99: 1204 fitc2010

<Android用の対応> バックグランド処理

画面非表示でアプリも終了させるstage.addEventListener(Event.DEACTIVATE , onDeactivateHandler);

private function onDeactivateHandler(event:Event):void { NativeApplication.nativeApplication.exit();}

リアルタイムのコミュニケーションを行うアプリなので裏側で起動し続けるのは好ましくないため

2010年12月4日土曜日

Page 100: 1204 fitc2010

 パブリッシュアイコン作成

アプリケーション設定XML

証明書の作成

apk作成

マーケットにアップしましたが!

2010年12月4日土曜日

Page 101: 1204 fitc2010

アイコン作成72px × 72px を用意

2010年12月4日土曜日

Page 102: 1204 fitc2010

アプリケーション設定XMLインターネット接続を許可<android>

<uses-permission android:name="android.permission.INTERNET"/>

・・・

</android>

2010年12月4日土曜日

Page 103: 1204 fitc2010

証明書の作成証明書の有効期限は25年を指定

adt -certificate -cn pigg_android -c JP -validityPeriod 25 2048-RSA pigg_android.p12 xxxxxxxx

validityPeriodオプションが追加されたのでこれで25を指定します(デフォルトは5年)

2010年12月4日土曜日

Page 104: 1204 fitc2010

apk作成

$AIR_SDK/bin/adt -package -target apk -storetype pkcs12 -keystore $KEY/pigg_android.p12 -storepass xxxxxxxx pigg_air.apk pigg_air-app.xml pigg_air.swf main.swf swf/* icons/* pigg/*

adtでパッケージを作成

Android Development Tools

AIR Developer Tool(AIR 開発ツール)

adtってどっち?

2010年12月4日土曜日

Page 105: 1204 fitc2010

実機にインストール

adb install -r pigg_air.apk

adbで実機にインストール

Android Debug Bridge

adb

2010年12月4日土曜日

Page 106: 1204 fitc2010

マーケットにアップしましたが!GALAXY Sでマーケット検索ヒットしない!

<uses-configuration android:reqFiveWayNav="true"/>

5 方向ナビゲーション制御は記述しない

アプリケーション設定XML<android>タブ内のマーケットフィルタが原因

Desire、Droid2、Nexus One は問題なくアプリページに行ける

GALAXYは5方向ナビゲーションがない

2010年12月4日土曜日

Page 107: 1204 fitc2010

5.これからの展開と課題

5.これからの展開と課題

4.機能の実装について

3.デザインについて

2.Androidでピグは動くのか?

1.アメーバピグの紹介

2010年12月4日土曜日

Page 108: 1204 fitc2010

これから

まだ実装していない機能を追加Androidだからできる機能を追加AmebaPicoにも展開

2010年12月4日土曜日

Page 109: 1204 fitc2010

課題

今後増えてくる画面サイズへの対応 PC版とのソース管理正式なチームビルド

2010年12月4日土曜日

Page 110: 1204 fitc2010

ご清聴ありがとうございました。

資料アップ先お知らせします@modeplus

2010年12月4日土曜日