SlideShare a Scribd company logo
ネイティブとHTML5を
スマートに連携させる設計と
実装のノウハウについて
第39回 HTML5とか勉強会+
日本Androidの会 2013年5月定例会
2013/05/28
自己紹介
• Kazuaki Hidaka
• クックパッド株式会社(2013/02∼)
Androidとか担当
• @kaa facebook
• Android以前はFlashやっていました。
クックパッドについて
月間利用者数:2,000万人以上
(PC1,388万人、モバイル1,702万人)
アジェンダ
• ハイブリッドアプリのタイプ
• ハイブリッドアプリの設計
• Cookpadはなぜハイブリッドアプリか
• Android,iPhoneに対応するために。
話さないこと
• webアプリかNativeアプリかみたいな話
• ゲーム環境としてのHTML5,Unity
• ソーシャルゲームの話
• コードの話
アプリの環境の流れ
• 端末のスペック向上。
WebViewでも一定のレベルで動かせるようになった。
• HTML5の仕様固まってきた。
搭載されるブラウザも共通化されてきた。
• iOSのUI面での審査緩くなってきた。
アプリ独自UIもやりやすくなった。
• やっとAndroidのOS分布も変わってきた。
ハイブリッドアプリのタイプ
ハイブリッドアプリとは
• HTML5を生かしたアプリ。
• 公式マーケットで配布できる。
• 複数プラットフォーム対応しやすい
メリット。
• ハイブリッド=技術を組み合わせる
ハイブリッドアプリのタイプ1
• アプリはWebViewを包むだけのもの。
• コンテンツ(HTML)はサーバーに置く。
• WEBアプリをそのまま移植できる
WebViewをラッピング 1
ハイブリッドアプリのタイプ2
• 1と違いHTMLはアプリに埋め込む。
• サーバーとはAPI通信を行ない連携。
• ローカルでもある程度動かせる。
アプリの実装のかわりにHTML5を使う。
WebViewをラッピング 2
ハイブリッドアプリのタイプ3
• 基本的にはNativeアプリ。
• WebViewを利用することでメリットの
ある画面はWebViewを使う。
一部の画面でWebViewを利用する
ハイブリッドアプリの設計
とりあえずHTMLで、ではなく
どちらでやったほうが価値が
ある画面なのかどうか
大事な方針
価値とは?
• 出来上がるものの品質
どの程度差が現れるのか
• 実装コスト
HTML5にすることでどれだけ楽になるのか
• 運用コスト
データの更新頻度・手間はどのくらいか
WebViewが適さないもの
• リスト・ギャラリー画面
Nativeのリストが持つviewの再利用・
画像キャッシュ・開放などのメリットが
大きい。
WebViewが適しているもの
• 詳細画面などのコンテンツ。
• HTMLのレイアウト能力の高さはNativeよりも
メリットが大きい。
文字の回り込み、枠付け、リンクの挿入など。
• 特に更新されていくコンテンツの運用では当初の
想定外の見せ方は起きる。
• 運用開始後に自由度の高いコンテンツ
実装例 1
WebViewの進む・戻る遷移とNativeの
画面の遷移の管理の問題が起きやすい
↓
WebViewでのリンク遷移はさせない方針
or
遷移はWebViewで行ない、
Native部分はダイアログ展開
実装例 2
• 要素の長押しの処理・フリックの処理は
javascriptで行ない、Native側に通知。
• call:,mail:などのリンクは定番なので
対応しておく
• Cookieでログイン状態を連動させる
忘れがちな違い
• HTMLでの遷移は画面遷移ごとにサーバーから
取得する。
• Nativeなら、その次の画面までまとめて取得、
次の画面の途中まで先に取得などできる。
• 通信のタイミングの設計がしやすいので
待ち時間を削れる。
• 遷移図ではわかりにくいが体験に差。
クックパッドアプリ(Android)が
ハイブリッドの理由
サービスの性質
• 基本的にコンテンツはサーバー上にある。
• PC、タブレットと常に同期しているものも多
いのでローカルで管理するものが少ない。
• 更新が多い。リアルタイム性もある
• 特定の機能を提供するというよりは、
総合アプリという立ち位置。
Nativeで行なっていること
• アプリ間連携用のアカウント情報管理
• レシピをのせる機能全般
• 各種ダイアログ・API通信
• 検索時の候補・音声検索・ウィジェット
運用上の理由
• 細かく仮説・検証が行われている
→chanko http://bit.ly/cookpad2012
• A/Bテスト、一部ユーザー向けテストを
するための環境が整っている
• スマホサイトとAndroidでコンテンツを
共通化
まとめ
• ハイブリッドアプリの幅は広い
• WebViewのメリット・デメリットを
もっと把握しよう。
• 運用は大切。
• 仲間も大切。 http://bit.ly/cookpadjob

More Related Content

PPTX
事例で解説するハイブリッドアプリ開発のポイント
PDF
はやわかりHTML5ハイブリッドアプリ開発事情
PDF
HTML5ハイブリッド アプリ開発の実践〜開発現場ですぐに活かせるコツを伝授〜
PPTX
CordovaでAngularJSアプリ開発
PDF
エンタープライズ・モバイルアプリにおける ハイブリッドアプリ開発
PPTX
HTML5ハイブリッドアプリ開発のベストプラクティス
PPTX
Cordova×業務システム:失敗しないモバイル開発の秘訣
PPTX
小さく早い改善がスマホのサービス開発を変える
事例で解説するハイブリッドアプリ開発のポイント
はやわかりHTML5ハイブリッドアプリ開発事情
HTML5ハイブリッド アプリ開発の実践〜開発現場ですぐに活かせるコツを伝授〜
CordovaでAngularJSアプリ開発
エンタープライズ・モバイルアプリにおける ハイブリッドアプリ開発
HTML5ハイブリッドアプリ開発のベストプラクティス
Cordova×業務システム:失敗しないモバイル開発の秘訣
小さく早い改善がスマホのサービス開発を変える

What's hot (20)

PPTX
エンタープライズ要件に対応する高品質なCordovaアプリ開発のポイント
PPTX
Cordova を使って本気で商用ハイブリッドアプリ開発をやってみた
PDF
Cordovaで作る!センサと超小型BLEモジュールを用いた簡単IoTアプリ開発
PDF
120分聞けばドヤ顔で語れる apache cordova スーパー勉強会
PDF
Androidでもサクサク動くHTML5ハイブリッドアプリの作り⽅
PDF
Html5/JSモバイルアプリ最前線
PPTX
Onsen UIが目指すもの
PDF
HTML5ハイブリッドアプリ開発 で拓くビジネスチャンス
PDF
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
PDF
~新しい着回しと出会おう~ 『XZ(クローゼット)』 を支える技術 -Cordova編-
PPTX
Cordovaの最近ホットな話題と地雷をまとめて紹介
PDF
Androidハイブリッドアプリを約2年間メンテンナンスしてきて分ったこと
PPTX
HTML5/JavaScriptで作るAndroidアプリ開発seminar
PPTX
Monacaでつくるハイブリッドアプリ
PDF
Onsen UI 2.0とUIライブラリの未来
PPTX
ハイブリッドアプリ開発最前線から見たHtml5の理想と現実
PDF
HTML5ハイブリッドアプリ の活用ポイント
PDF
Monaca+Onsen UIで作るアプリ事始め
PPTX
【eLV勉強会】AngularJSでのモバイルフロントエンド開発
PPTX
モバイル用Webフレームワーク最前線
エンタープライズ要件に対応する高品質なCordovaアプリ開発のポイント
Cordova を使って本気で商用ハイブリッドアプリ開発をやってみた
Cordovaで作る!センサと超小型BLEモジュールを用いた簡単IoTアプリ開発
120分聞けばドヤ顔で語れる apache cordova スーパー勉強会
Androidでもサクサク動くHTML5ハイブリッドアプリの作り⽅
Html5/JSモバイルアプリ最前線
Onsen UIが目指すもの
HTML5ハイブリッドアプリ開発 で拓くビジネスチャンス
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
~新しい着回しと出会おう~ 『XZ(クローゼット)』 を支える技術 -Cordova編-
Cordovaの最近ホットな話題と地雷をまとめて紹介
Androidハイブリッドアプリを約2年間メンテンナンスしてきて分ったこと
HTML5/JavaScriptで作るAndroidアプリ開発seminar
Monacaでつくるハイブリッドアプリ
Onsen UI 2.0とUIライブラリの未来
ハイブリッドアプリ開発最前線から見たHtml5の理想と現実
HTML5ハイブリッドアプリ の活用ポイント
Monaca+Onsen UIで作るアプリ事始め
【eLV勉強会】AngularJSでのモバイルフロントエンド開発
モバイル用Webフレームワーク最前線
Ad

Viewers also liked (19)

PPTX
最近のHTML5はどうなってるのか
PPT
Pokelabo android web
PDF
HTML Web Platform
PDF
HTML5時代のWebデザイン
PPTX
ハイブリッドアプリの開発
PDF
JavaScript時代のJava #kansumiB7 #kansumi
PDF
【第4回】デザイナーがコードから読み解く、Androidアプリのデザインの幅を広げるコツとTips
PDF
【第3回】デザイナーがコードから読み解く、Androidアプリのデザインの幅を広げるコツとTips
PDF
【第1回】デザイナーがコードから読み解く、Androidアプリのデザインの幅を広げるコツとTips
PDF
【第2回】デザイナーがコードから読み解く、Androidアプリのデザインの幅を広げるコツとTips
PDF
【総集編】デザイナーがコードから読み解く、Androidアプリのデザインの幅を広げるコツとTips
PDF
【Monaca×mobile backend】 プッシュ通知をカンタン実装! スピード感ある開発をしよう!
PDF
HTML5を使うためのプログレッシブエンハンスメント 〜すべての人に確実に情報を届けるために〜SwapSkillsFreeEventProgressiv...
PPTX
Workshop1-01
PDF
最近のWeb関連技術の動向あれこれ
PDF
モバイルWebアプリのこれまでとこれから。Sencha Touch vs jQuery Mobile
PDF
Elastic beanstalk と Docker と Play
PDF
Sencha のフレームワーク Ext JS 5 について 15 分で説明するよ
PDF
New Generation Build System "Fly"
最近のHTML5はどうなってるのか
Pokelabo android web
HTML Web Platform
HTML5時代のWebデザイン
ハイブリッドアプリの開発
JavaScript時代のJava #kansumiB7 #kansumi
【第4回】デザイナーがコードから読み解く、Androidアプリのデザインの幅を広げるコツとTips
【第3回】デザイナーがコードから読み解く、Androidアプリのデザインの幅を広げるコツとTips
【第1回】デザイナーがコードから読み解く、Androidアプリのデザインの幅を広げるコツとTips
【第2回】デザイナーがコードから読み解く、Androidアプリのデザインの幅を広げるコツとTips
【総集編】デザイナーがコードから読み解く、Androidアプリのデザインの幅を広げるコツとTips
【Monaca×mobile backend】 プッシュ通知をカンタン実装! スピード感ある開発をしよう!
HTML5を使うためのプログレッシブエンハンスメント 〜すべての人に確実に情報を届けるために〜SwapSkillsFreeEventProgressiv...
Workshop1-01
最近のWeb関連技術の動向あれこれ
モバイルWebアプリのこれまでとこれから。Sencha Touch vs jQuery Mobile
Elastic beanstalk と Docker と Play
Sencha のフレームワーク Ext JS 5 について 15 分で説明するよ
New Generation Build System "Fly"
Ad

Similar to ネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについて (20)

PPTX
これからのNOTESモバイルアプリはこう作れ
PDF
Google io2011報告
KEY
HTML5時代のwebクリエイターに必要なこと
PDF
20120316 designerworkshoppublished
KEY
20120413 nestakabaneworkshop
KEY
みなさんがHtml5をやらなくていい3つの理由
KEY
iPhone/Android アプリをまとめて省エネ開発する技術
PPTX
実録!HoloLens×AI×IoTアプリが開発できるまでの挫折と成功
PDF
Infragistics Ultimate 2018 Vol.2最新機能
PPTX
Introduction to the Thunder Cloud Project Technical Committee
KEY
Html5時代のクリエイターのあり方
PDF
Mochrom - スマートフォンビジネスサミット
KEY
組込みにおけるHTML5
PDF
The return of Mobile5 #mobile5
PPTX
Phone gap+javascriptスマホアプリ開発(入門編)
KEY
The return of Mobile5
PDF
HTML5 ~よくわからないけど言葉だけはよく聞きます~
PDF
HTML5 ~よくわからないけど言葉だけはよく聞きます~
PDF
Realm meetup LT大会(Androidアプリへの適用経験談)
PDF
Io t,ai時代のソフトウェア
これからのNOTESモバイルアプリはこう作れ
Google io2011報告
HTML5時代のwebクリエイターに必要なこと
20120316 designerworkshoppublished
20120413 nestakabaneworkshop
みなさんがHtml5をやらなくていい3つの理由
iPhone/Android アプリをまとめて省エネ開発する技術
実録!HoloLens×AI×IoTアプリが開発できるまでの挫折と成功
Infragistics Ultimate 2018 Vol.2最新機能
Introduction to the Thunder Cloud Project Technical Committee
Html5時代のクリエイターのあり方
Mochrom - スマートフォンビジネスサミット
組込みにおけるHTML5
The return of Mobile5 #mobile5
Phone gap+javascriptスマホアプリ開発(入門編)
The return of Mobile5
HTML5 ~よくわからないけど言葉だけはよく聞きます~
HTML5 ~よくわからないけど言葉だけはよく聞きます~
Realm meetup LT大会(Androidアプリへの適用経験談)
Io t,ai時代のソフトウェア

More from Kazuaki Hidaka (6)

PDF
ディレクションG勉強会 vol.2
PDF
ディレクションG勉強会 vol.1
PDF
Androidのアニメーションしょぼくない #potatotips
PDF
Potatotips #5 MBaaSつかってみた
PPTX
制作チームで共有しておくと幸せなこと
PPTX
デザインデータの扱い方とFireworksのそれっぽい使い方
ディレクションG勉強会 vol.2
ディレクションG勉強会 vol.1
Androidのアニメーションしょぼくない #potatotips
Potatotips #5 MBaaSつかってみた
制作チームで共有しておくと幸せなこと
デザインデータの扱い方とFireworksのそれっぽい使い方

ネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについて