SlideShare a Scribd company logo
Pokelabo android web
Copyright © POKELABO.inc All Rights Reserved.Confidential
ハイブリッドソーシャルアプリの現場
Social Game Development with HTML5
2013/05/28
クリエイティブ事業部 鈴木 匠太
ソーシャルメディア事業部 前田 翔梧
Copyright © POKELABO.inc All Rights Reserved.Confidential
自己紹介
鈴木 匠太 (29) 元 Flasher
クリエイティブ事業部 部長
主にアニメーション演出部分を担当
CreateJS や AfterEffects をよく使用する
富士登山、スカイダイビング、マラソンを嗜む
前田 翔梧 (29) 元日立 Sler
ソーシャルメディア事業部 リードエンジニア
主に PHP + Android™ Java などで開発
人と繋がることが好き
スノボ、サッカー、プログラムを嗜む
Copyright © POKELABO.inc All Rights Reserved.Confidential
今日お伝えしたいこと
◆ ポケラボってどんな会社なの?
◆ なぜハイブリッドアプリを採用したのか?
◆ 実際、ハイブリッドアプリってどうなの?
◆ ポケラボエンジニアが Android™ で目指す事
※ セガとセガロゴは株式会社セガの登録商標です。
Copyright © POKELABO.inc All Rights Reserved.Confidential
会社紹介
◆ 会社名
株式会社ポケラボ
Pokelabo, Inc.
◆ 設立   2007 年 11 月
◆ 社員数  200 名程
◆ 資本金  13 億 7,290 万円
◆ 事業内容
モバイル向けソーシャルアプリ
の企画・開発・運営
元マンションベンチャー
Copyright © POKELABO.inc All Rights Reserved.Confidential
プラットフォームの情報を共有
×
GREE さんのノウハウを活かす
※ すべての商標は、それぞれの所有者に帰属しま
す。
※ セガとセガロゴは株式会社セガの登録商標です。
Copyright © POKELABO.inc All Rights Reserved.Confidential
コンソールの技術を習得する
セガさんのノウハウを活かす
×
この CM を GW 中に見ませんでしたか?
Copyright © POKELABO.inc All Rights Reserved.Confidential
海外での展開・運営方法を習得する
aeria GAMES さんのノウハウを活かす
×
ドイツ 5 位 / フランス 14 位 / US 47 位
フィリピン・シンガポール 3 位
フィジーパナマ
GROSS1 位
Copyright © POKELABO.inc All Rights Reserved.Confidential
メイン運営サービス紹介
海外にも積極的に進出!
GOOD
BAD
iOS では比較的高いランキングを叩き出しているが
Android™ に関しては課題だらけの状況!
Copyright © POKELABO.inc All Rights Reserved.Confidential
なぜ、ハイブリッドアプリを採用したのか?
Copyright © POKELABO.inc All Rights Reserved.Confidential
And
more…
2008 年
「 Start 」
Off deck site apps
2009 年
「 Get Chance 」
Opened Mobile SNS
2010 年
「 Growing 」
Fundraised series A $12M
2011 年
「 To global 」
■ Tie-up campaign
Fuji
TV
Yomiuri-
Giants
# of member
3
7
60
100
ガラケー向けソーシャルゲーム開発が中心
web エンジニアが多かった
Copyright © POKELABO.inc All Rights Reserved.Confidential
先人達の教えに共感した
Web が最終的には勝つだろう !Web が最終的には勝つだろう !
Copyright © POKELABO.inc All Rights Reserved.Confidential
ポケラボ運営アプリの月別 UU と売り上げコイン数
会社全体が危うかったので方針転換
web では非公開
Copyright © POKELABO.inc All Rights Reserved.Confidential
ネイティブでのアニメーションが作れなかった
Copyright © POKELABO.inc All Rights Reserved.Confidential
結果として Swiffy を選択し
現在は CreateJS をメインに使用
変換 変換
Copyright © POKELABO.inc All Rights Reserved.Confidential
1.PHP エンジニアが多かった。
2. 先人達の教えに納得させられた。
3. ガラケーの横展開が目的だった。
4. スマホアプリ上でのリッチな演出制作に困難。
なぜ、ハイブリッドアプリを採用したのか?
Copyright © POKELABO.inc All Rights Reserved.Confidential
実際、ハイブリッドアプリってどうなの?
Copyright © POKELABO.inc All Rights Reserved.Confidential
iPhone + Android™ 両対応可能
Copyright © POKELABO.inc All Rights Reserved.Confidential
Copyright © POKELABO.inc All Rights Reserved.Confidential
WebView って遅いんじゃないの?
Copyright © POKELABO.inc All Rights Reserved.Confidential
Flash で BoneAnime AS JS⇒ に めっちゃ動く!
HTML5 でのアバターシステム開発
問題 1
CreateJS は Bone が使えない
Copyright © POKELABO.inc All Rights Reserved.Confidential
問題 2
増え続けるスキル演出
現在 110 個 NEXT + 70 個以上
Copyright © POKELABO.inc All Rights Reserved.Confidential
ポケラボエンジニアが
Android™ で目指すこと
Copyright © POKELABO.inc All Rights Reserved.Confidential
より速く・より快適に・動作すること 
ユーザ様に楽しんでもらいたい!!
Copyright © POKELABO.inc All Rights Reserved.Confidential
3つのアプローチ
iOS との
UUID 連携
ハイブリッ
ド
固定メ
ニュー
ハイブリッド
高速
アニメーショ
ン
Copyright © POKELABO.inc All Rights Reserved.Confidential
ハイブリッド固定メニュー
アプリに重要なヘッダーフッターの固定メニュー
・ overflow: scroll; と position:fixed; で実装
・・・でも端末によっては動かない。
・ iScroll を使う。
・・・でも端末によっては遅い。
ならいっそ WebView での
表示をやめてしまおう!
Copyright © POKELABO.inc All Rights Reserved.Confidential
ハイブリッド固定メニュー
ヘッダーフッター用のコマンドを用意する。
例)
heder://json=[{“type”:”badge”} ・・・ ]
Android™ ネイティブで上記コマンドの JSON を
解析し、全て Android™ の View に変換してあげる。
→ 重要:ハイブリッドを目指しているので
     Web との連携が必須!
Copyright © POKELABO.inc All Rights Reserved.Confidential
ハイブリッド固定メニュー
コマンドを Web から指定するだけで、
ヘッダーフッターを安定的に表示させる事に成
功!
Copyright © POKELABO.inc All Rights Reserved.Confidential
ハイブリッド高速アニメーション
ハイブリッド
高速
アニメーショ
ン
Copyright © POKELABO.inc All Rights Reserved.Confidential
ハイブリッド高速アニメーション
もっとスピーディーなアプリリリース、
もっとスピーディーなアニメーション描画をした
い!
 …でもそんな完璧な
    ライブラリはない。
  なら自分たちで
  作ってしまおう!
Copyright © POKELABO.inc All Rights Reserved.Confidential
ハイブリッド高速アニメーション
『実現したいこと』
 ・基本はハイブリッド (Web) !
 ・今あるリソースをそのまま使いたい!
 ・快速アニメーション!
Copyright © POKELABO.inc All Rights Reserved.Confidential
ハイブリッド高速アニメーション
2段階「変換」を行い、
Android™ ネイティブでアニメーションを描画!
     変換       変換
FLASH     JavaScript      Android™
Copyright © POKELABO.inc All Rights Reserved.Confidential
ハイブリッド高速アニメーション
androidnative.setBackColor("000000");
androidnative.setFPS(30);
androidnative.loadGraphic("images/touch_screen.png", 1, 1, false);
       独自コマンドを Android の
       Canvas に変換し描画する。
canvas.drawBitmap(testbmp0, 220, 10, null);
canvas.drawBitmap(testbmp1, 20, 10, null);
canvas.drawBitmap(testbmp2, 20, 210, null);
Copyright © POKELABO.inc All Rights Reserved.Confidential
ハイブリッド高速アニメーション
従来の CreateJS より高速アニメーションを実現!
FPS 10 〜 20   FPS   30 〜 45
約3倍のフレームレートに!
Copyright © POKELABO.inc All Rights Reserved.Confidential
iOS との
UUID 連携
IOS との UUID 連携
Copyright © POKELABO.inc All Rights Reserved.Confidential
IOS との UUID 連携
iOS 端末やポケラボアプリ内でコラボ連携し、
多くのユーザ様にアプリを遊んでもらいたい!
… でも Android™ の UUID は使えない。
  こっちで UUID を
  発行してあげよう!
Copyright © POKELABO.inc All Rights Reserved.Confidential
IOS との UUID 連携
UUID とは重複しない一意な値です。
UUID を作成する方法は簡単。
String uuid = UUID.randomUUID().toString();
ただし、アプリをアンインストールしてしまうと
UUID も同時に削除されてしまい、
別 UUID が生成されてしまう。
Copyright © POKELABO.inc All Rights Reserved.Confidential
IOS との UUID 連携
ポケラボネットワークシステム(通称 pokenet )
利用して必ず1端末1 UUID を実現。
pokenet で
端末認識
UUID 発行
問い合わせ
Copyright © POKELABO.inc All Rights Reserved.Confidential
IOS との UUID 連携
端末、アプリ、関係なくコラボ連携可能に!
Copyright © POKELABO.inc All Rights Reserved.Confidential
IOS との UUID 連携
さらにこの仕組みを利用して、同じデータが
外で Android™ 端末、家で iPad として遊べる!
完全ハイブリッドアプリとしての動作を実現!
Copyright © POKELABO.inc All Rights Reserved.Confidential
Android™ が課題
Copyright © POKELABO.inc All Rights Reserved.Confidential
Thank You!
いつも仕掛け人であること

More Related Content

Pokelabo android web

  • 2. Copyright © POKELABO.inc All Rights Reserved.Confidential ハイブリッドソーシャルアプリの現場 Social Game Development with HTML5 2013/05/28 クリエイティブ事業部 鈴木 匠太 ソーシャルメディア事業部 前田 翔梧
  • 3. Copyright © POKELABO.inc All Rights Reserved.Confidential 自己紹介 鈴木 匠太 (29) 元 Flasher クリエイティブ事業部 部長 主にアニメーション演出部分を担当 CreateJS や AfterEffects をよく使用する 富士登山、スカイダイビング、マラソンを嗜む 前田 翔梧 (29) 元日立 Sler ソーシャルメディア事業部 リードエンジニア 主に PHP + Android™ Java などで開発 人と繋がることが好き スノボ、サッカー、プログラムを嗜む
  • 4. Copyright © POKELABO.inc All Rights Reserved.Confidential 今日お伝えしたいこと ◆ ポケラボってどんな会社なの? ◆ なぜハイブリッドアプリを採用したのか? ◆ 実際、ハイブリッドアプリってどうなの? ◆ ポケラボエンジニアが Android™ で目指す事
  • 5. ※ セガとセガロゴは株式会社セガの登録商標です。 Copyright © POKELABO.inc All Rights Reserved.Confidential 会社紹介 ◆ 会社名 株式会社ポケラボ Pokelabo, Inc. ◆ 設立   2007 年 11 月 ◆ 社員数  200 名程 ◆ 資本金  13 億 7,290 万円 ◆ 事業内容 モバイル向けソーシャルアプリ の企画・開発・運営 元マンションベンチャー
  • 6. Copyright © POKELABO.inc All Rights Reserved.Confidential プラットフォームの情報を共有 × GREE さんのノウハウを活かす ※ すべての商標は、それぞれの所有者に帰属しま す。
  • 7. ※ セガとセガロゴは株式会社セガの登録商標です。 Copyright © POKELABO.inc All Rights Reserved.Confidential コンソールの技術を習得する セガさんのノウハウを活かす × この CM を GW 中に見ませんでしたか?
  • 8. Copyright © POKELABO.inc All Rights Reserved.Confidential 海外での展開・運営方法を習得する aeria GAMES さんのノウハウを活かす × ドイツ 5 位 / フランス 14 位 / US 47 位 フィリピン・シンガポール 3 位 フィジーパナマ GROSS1 位
  • 9. Copyright © POKELABO.inc All Rights Reserved.Confidential メイン運営サービス紹介 海外にも積極的に進出! GOOD BAD iOS では比較的高いランキングを叩き出しているが Android™ に関しては課題だらけの状況!
  • 10. Copyright © POKELABO.inc All Rights Reserved.Confidential なぜ、ハイブリッドアプリを採用したのか?
  • 11. Copyright © POKELABO.inc All Rights Reserved.Confidential And more… 2008 年 「 Start 」 Off deck site apps 2009 年 「 Get Chance 」 Opened Mobile SNS 2010 年 「 Growing 」 Fundraised series A $12M 2011 年 「 To global 」 ■ Tie-up campaign Fuji TV Yomiuri- Giants # of member 3 7 60 100 ガラケー向けソーシャルゲーム開発が中心 web エンジニアが多かった
  • 12. Copyright © POKELABO.inc All Rights Reserved.Confidential 先人達の教えに共感した Web が最終的には勝つだろう !Web が最終的には勝つだろう !
  • 13. Copyright © POKELABO.inc All Rights Reserved.Confidential ポケラボ運営アプリの月別 UU と売り上げコイン数 会社全体が危うかったので方針転換 web では非公開
  • 14. Copyright © POKELABO.inc All Rights Reserved.Confidential ネイティブでのアニメーションが作れなかった
  • 15. Copyright © POKELABO.inc All Rights Reserved.Confidential 結果として Swiffy を選択し 現在は CreateJS をメインに使用 変換 変換
  • 16. Copyright © POKELABO.inc All Rights Reserved.Confidential 1.PHP エンジニアが多かった。 2. 先人達の教えに納得させられた。 3. ガラケーの横展開が目的だった。 4. スマホアプリ上でのリッチな演出制作に困難。 なぜ、ハイブリッドアプリを採用したのか?
  • 17. Copyright © POKELABO.inc All Rights Reserved.Confidential 実際、ハイブリッドアプリってどうなの?
  • 18. Copyright © POKELABO.inc All Rights Reserved.Confidential iPhone + Android™ 両対応可能
  • 19. Copyright © POKELABO.inc All Rights Reserved.Confidential
  • 20. Copyright © POKELABO.inc All Rights Reserved.Confidential WebView って遅いんじゃないの?
  • 21. Copyright © POKELABO.inc All Rights Reserved.Confidential Flash で BoneAnime AS JS⇒ に めっちゃ動く! HTML5 でのアバターシステム開発 問題 1 CreateJS は Bone が使えない
  • 22. Copyright © POKELABO.inc All Rights Reserved.Confidential 問題 2 増え続けるスキル演出 現在 110 個 NEXT + 70 個以上
  • 23. Copyright © POKELABO.inc All Rights Reserved.Confidential ポケラボエンジニアが Android™ で目指すこと
  • 24. Copyright © POKELABO.inc All Rights Reserved.Confidential より速く・より快適に・動作すること  ユーザ様に楽しんでもらいたい!!
  • 25. Copyright © POKELABO.inc All Rights Reserved.Confidential 3つのアプローチ iOS との UUID 連携 ハイブリッ ド 固定メ ニュー ハイブリッド 高速 アニメーショ ン
  • 26. Copyright © POKELABO.inc All Rights Reserved.Confidential ハイブリッド固定メニュー アプリに重要なヘッダーフッターの固定メニュー ・ overflow: scroll; と position:fixed; で実装 ・・・でも端末によっては動かない。 ・ iScroll を使う。 ・・・でも端末によっては遅い。 ならいっそ WebView での 表示をやめてしまおう!
  • 27. Copyright © POKELABO.inc All Rights Reserved.Confidential ハイブリッド固定メニュー ヘッダーフッター用のコマンドを用意する。 例) heder://json=[{“type”:”badge”} ・・・ ] Android™ ネイティブで上記コマンドの JSON を 解析し、全て Android™ の View に変換してあげる。 → 重要:ハイブリッドを目指しているので      Web との連携が必須!
  • 28. Copyright © POKELABO.inc All Rights Reserved.Confidential ハイブリッド固定メニュー コマンドを Web から指定するだけで、 ヘッダーフッターを安定的に表示させる事に成 功!
  • 29. Copyright © POKELABO.inc All Rights Reserved.Confidential ハイブリッド高速アニメーション ハイブリッド 高速 アニメーショ ン
  • 30. Copyright © POKELABO.inc All Rights Reserved.Confidential ハイブリッド高速アニメーション もっとスピーディーなアプリリリース、 もっとスピーディーなアニメーション描画をした い!  …でもそんな完璧な     ライブラリはない。   なら自分たちで   作ってしまおう!
  • 31. Copyright © POKELABO.inc All Rights Reserved.Confidential ハイブリッド高速アニメーション 『実現したいこと』  ・基本はハイブリッド (Web) !  ・今あるリソースをそのまま使いたい!  ・快速アニメーション!
  • 32. Copyright © POKELABO.inc All Rights Reserved.Confidential ハイブリッド高速アニメーション 2段階「変換」を行い、 Android™ ネイティブでアニメーションを描画!      変換       変換 FLASH     JavaScript      Android™
  • 33. Copyright © POKELABO.inc All Rights Reserved.Confidential ハイブリッド高速アニメーション androidnative.setBackColor("000000"); androidnative.setFPS(30); androidnative.loadGraphic("images/touch_screen.png", 1, 1, false);        独自コマンドを Android の        Canvas に変換し描画する。 canvas.drawBitmap(testbmp0, 220, 10, null); canvas.drawBitmap(testbmp1, 20, 10, null); canvas.drawBitmap(testbmp2, 20, 210, null);
  • 34. Copyright © POKELABO.inc All Rights Reserved.Confidential ハイブリッド高速アニメーション 従来の CreateJS より高速アニメーションを実現! FPS 10 〜 20   FPS   30 〜 45 約3倍のフレームレートに!
  • 35. Copyright © POKELABO.inc All Rights Reserved.Confidential iOS との UUID 連携 IOS との UUID 連携
  • 36. Copyright © POKELABO.inc All Rights Reserved.Confidential IOS との UUID 連携 iOS 端末やポケラボアプリ内でコラボ連携し、 多くのユーザ様にアプリを遊んでもらいたい! … でも Android™ の UUID は使えない。   こっちで UUID を   発行してあげよう!
  • 37. Copyright © POKELABO.inc All Rights Reserved.Confidential IOS との UUID 連携 UUID とは重複しない一意な値です。 UUID を作成する方法は簡単。 String uuid = UUID.randomUUID().toString(); ただし、アプリをアンインストールしてしまうと UUID も同時に削除されてしまい、 別 UUID が生成されてしまう。
  • 38. Copyright © POKELABO.inc All Rights Reserved.Confidential IOS との UUID 連携 ポケラボネットワークシステム(通称 pokenet ) 利用して必ず1端末1 UUID を実現。 pokenet で 端末認識 UUID 発行 問い合わせ
  • 39. Copyright © POKELABO.inc All Rights Reserved.Confidential IOS との UUID 連携 端末、アプリ、関係なくコラボ連携可能に!
  • 40. Copyright © POKELABO.inc All Rights Reserved.Confidential IOS との UUID 連携 さらにこの仕組みを利用して、同じデータが 外で Android™ 端末、家で iPad として遊べる! 完全ハイブリッドアプリとしての動作を実現!
  • 41. Copyright © POKELABO.inc All Rights Reserved.Confidential Android™ が課題
  • 42. Copyright © POKELABO.inc All Rights Reserved.Confidential Thank You! いつも仕掛け人であること