SlideShare une entreprise Scribd logo
1  sur  33
ハイブリッドアプリ開発最前線から見た
         HTML5の理想と現実
                                                                アシアル株式会社 田中正裕
                                                                 http://www.asial.co.jp




   URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   1
自己紹介



田中正裕 (たなかまさひろ)

2002年   アシアル株式会社を創業
2013年現在 今に至る


fb, Twitter: 特にやっていません・・・
趣味: 軽飛行機




                      URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   2
アシアル株式会社の紹介

アシアル株式会社は、これまで培ってきたサーバーサイド技術をもとに、
HTML5やJavaScriptといったクライアント技術を高い次元で組み合わせ、
優れたユーザーエクスペリエンスを持つアプリケーションを提案します。




             URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   3
ハイブリッドアプリとは?




   URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   4
モバイルに関するお話です




   URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   5
さまざまなモバイルOSが混在




                                    出典: VisionMobile estimates, IDC, Canalys, Gartner, OS vendors



    URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   6
どんどん増えるモバイルOS




   URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   7
どれも最新のブラウザー性能




   URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   8
HTML5でWebアプリ

対応ブラウザーがあればどのOSの上でも動作するのが魅力


   index.html                       style.css                                            script.js


                    インターネット



                           対応ブラウザー




                URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   9
HTML5かネイティブか

“企業としての最大の失敗
                                                      http://fb.html5isready.com/
はネイティブアプリではな
くHTML5に賭けすぎたこと
です。時期尚早でした。”
と話した。“iOSアプリに
したら、利用者のフィード
の消費が2倍になりまし
た。”


                                        “Facebookモバイルアプリケー
                                        ションの動作が遅いのはHTML5の
                                        せいなんかじゃない。 我々は現
                                        代のスマートフォンのブラウ
                                        ザーの能力やHTML5の豊な能力を
                                        知っていました。”



            URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   10
Webアプリの利点と弱点




                                                             出典: Developer Economics 2013




  URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   11
Webアプリの利点と弱点


                                      HTML5を選択した理由

                                      ・クロスプラットフォームのコード
                                      移植性
                                      ・低コスト開発
                                      ・クロススクリーンのコード移植性
                                      ・学習コストの低さ
                                      ・オープンソース
                                      ・リーチ(検索エンジンなど)
                                      ・開発コミュニティーの充実
                                                             出典: Developer Economics 2013




  URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   12
Webアプリの利点と弱点



HTML5のネイティブと比べた弱点

・ネイティブAPIが利用不可
・より優れた開発環境
・HTML5最適化された端末が無い
・より優れたデバッグ環境
・迅速な標準化


                                                                           出典: Developer Economics 2013




                URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   13
Webアプリとネイティブアプリの比較
                        Webアプリ                                                      ネイティブアプリ

開発言語              HTML5とJavaScript                                                 Objective-CやJava

                 Webブラウザーが備える                                                 端末やOSが持つすべての
機能
                    機能のみ利用可能                                                    機能を利用可能
                  通常のWeb開発環境                                        XcodeやEclipseといったOSごとの開発
開発環境
                エディタ、Dreamweaver等                                                環境
                          ○                                                         ×
クロスプラットフォーム
               同じJavaScriptコードを流用可                                              開発言語自体が異なる
                       △                                                                ◎
実行速度
               Webブラウザーが実行エンジン                                                      OSが直接実行する
                       ×
                                                                                  ◎
オフライン対応       キャッシュを用いて一部オフライン対
                                                                             端末内にプログラムが配置
                     応も可能
                 Webサイトにアクセス
アプリの配布方法                                                                      マーケットの登録が原則
                マーケットへの登録は不可
                サーバーから配信するため                                      アップデートのたびにマーケット登録。
メンテナンス方法
                常に最新状態をキープ可能                                          更新はユーザー次第



                  URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   14
超えられないブラウザーの「壁」

• デバイス機能(いわゆるDevice API)のサポー
  トが限定的
 – カメラ撮影、Bluetooth、NFC、OpenGLなど・・・


• OS機能をフルに使えない
 – アドレス帳、プッシュ通信、ホームウィジェットなど・・・

• アプリマーケットでの課金ができない


• JavaScriptの言語仕様を超えられない

             URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   15
超えられないブラウザーの「壁」

• デバイス機能(いわゆるDevice API)のサポー
  トが限定的
 – カメラ撮影、Bluetooth、NFC、OpenGLなど・・・

        ハイブリッドアプリ
• OS機能をフルに使えない
         を試してみては?
 – アドレス帳、プッシュ通信、ホームウィジェットなど・・・

• アプリマーケットでの課金ができない


• JavaScriptの言語仕様を超えられない

             URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   16
ウェブ+ネイティブ=ハイブリッド


       index.html                                      style.css                                   script.js


                    ウェブ
ハイブリッド =                   +
            ネイティブ




           URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   17
ハイブリッドアプリの特徴

GPS                                                                            HTML/JS/CSS
             ネイティブ側も拡張可能


                                                                     ネイティブコード
                                                                      (いわゆるWebView)

                                                            ハイブリッドアプリの
                                                            パッケージ


カメラ
                                                                                       サーバーとの通信は
       Webアプリではアクセスできない
       各種ネイティブAPIを実行できる
                                                                                       AjaxとかWebSocket

連絡帳
など


            URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   18
ハイブリッド化を後押しするもの

• BYOD・コンシューマライゼーションへの適用性
  – 『2016年には、企業向けアプリの50%以上はハイブリッドアプリとな
    るだろう』2013年2月4日、Gartner


• 低コスト・RADなソリューションとしての開発手法
  – プロトタイプと本開発を一気に進められる


• Windows 8、Firefox OS、Tizenなどの新プラットフォームにお
  いても、ハイブリッドアプリを低コストに移植可能
  – これらはネイティブでHTML5アプリが動作する




               URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   19
構築技術・開発環境

                                                                   言語


                                                                                      Objective-C                                       Java
                   +

                                                                   FW
                   +                                                           iOS SDK                                  Android SDK

Zepto.js   jQuery Mobile   Sencha Touch


                 ウェブ                                                                                 ネイティブ


 開発環境


                           URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   20
PhoneGap (Cordova) API

                                                    =
加速度センサー         端末に内蔵された加速度センサーを読み取り、端末の傾きを取得する
カメラ             端末のカメラやアルバムにアクセスし、写真を取得する
ビデオキャプチャー       ビデオを録画する
オーディオ録音・再生      オーディオを録音したり、再生する
コンパス            端末の向きを方位情報として取得する
接続状態確認          OSのネットワーク接続状態を取得する
アドレス帳           OSの連絡帳にアクセスし、情報の入出力を行う
デバイス情報          デバイスのモデル名や端末IDなどの取得や、OS情報を取得する
ハードウェアボタン       Android端末の持つ各種ボタンに対するイベントを取得する
ファイルシステム        OSのファイルシステムにアクセスし、ファイルの入出力を行う
GPS             GPSセンサーにアクセスし、現在の緯度経度を取得する
国際化             OSの利用言語や各種ロケール情報を参照する
バイブレーター         バイブレーターを実行する
スプラッシュ操作        起動時に表示されるスプラッシュ画面を制御する
SQLデータベース       SQLデータベースにアクセスする


                  URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   21
ハイブリッドアプリ構築事例




auヘッドライン
KDDI株式会社    名刺管理: Eight                    テレ朝動画アプリ                                               シューズファインダー
            © 三三株式会社                       © 株式会社テレビ朝日                                            © 株式会社アシックス




                       URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   22
ハイブリッドアプリの課題



デバッグのしやすさ

       そこでMonacaの登場
完全なクロスプラットフォーム開発の難しさ

フルネイティブと比較した時のヌルサク感



       URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   23
Monacaとは?

    クラウド×HTML5
 ハイブリッドアプリ開発環境




『誰でも今日からアプリ開発。』



 HTML5ベースの                                                                ビルド&
   開発環境                                                                   デバッガー


       URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   24
Monacaサービス一覧

                 すべて無料でお使い頂けます


① ブラウザーベースのクラウドIDE                           ② PhoneGapベースのFW

                                                                    Monacaフレームワーク
                                                                                                Available on GitHub


                                             ③ デバッグ用ツール


                                                                     Monacaデバッガー
  http://monaca.mobi/


                    URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   25
ビルド機能




                            HTML、JavaScript、CSSエディター



プロジェクト管理




                    デベロッパーコンソールとかFirebugのような
                         インスペクター&JavaScriptコンソール




                   URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   26
DEMOの前に
私がデモをするその前に...

         Androidをお持ちの皆様は、ぜひGoogle Playから
         「Monacaデバッガー」をインストールしてください
         (最新版:バージョン1.6.1)



インストール後、Monacaデバッガーでログインをお願いします。

     メールアドレス:                     html5
     パスワード:                       monaca
※本アカウントは講演終了後に削除しますのでご了承ください
※最大10端末程度でログインすることを想定しています(汗
                                                                                      http://monaca.mobi/

                 URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   27
「Eight」で見るMonaca独自の機能

                    •   iOS、Androidに対応した名刺管理アプリケーション
                    •   Monacaを用いたハイブリッドアプリとして開発
Eight - つなげて育つ名刺帳
                    •   フレームワークはPhoneGapとZepto.jsを使用




                                                        ストアから無料DL


                        URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   28
HTML5の苦手部分を補うためのネイティブ機能

                                                           ネイティブ                                                 ネイティブ




                                                            HTML5/CSS




 HTML5/CSS   ネイティブ
                                                                                                             HTML5/CSS




                                                           ネイティブ




                URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   29
ネイティブ機能を用いたアニメーション

                                                          HTML5アプリ最大の弱点は
                                                            アニメーション品質が低いこと。

                                                          Eightではネイティブ機能を用いて
                                                            高品質な画面遷移を実現した。




      URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   30
ハイブリッドアプリの課題


• ネイティブと同じルック&フィールドの実現

 – どうしても比較されてしまう

• JavaScriptの書き方によるばらつきが大きい

 – 特にDOM操作にボトルネックが発生しやすい

• ネイティブ機能を使えば使うほど複雑に

 – あわせてポータビリティも低下

• セキュリティに注意!


            URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   31
まとめ

• 低コスト・クロスプラットフォームなモバイルアプリ開
 発手段として、ハイブリッドアプリは有効



• 業務アプリやフロントエンド系アプリでの第一候補



• 国内でのノウハウの蓄積は浅く、これから情報共有が進
 んでいくと考えられる

      プラス、Monacaを是非使って遊んでみてください

         URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   32
誰でも今日からアプリ開発。




   URL : http://www.asial.co.jp/   │ Copyright © 2013 Asial Corporation. All Rights Reserved.   │   2013/2/15   |   33

Contenu connexe

Tendances

Tendances (20)

Cordova×業務システム:失敗しないモバイル開発の秘訣
Cordova×業務システム:失敗しないモバイル開発の秘訣Cordova×業務システム:失敗しないモバイル開発の秘訣
Cordova×業務システム:失敗しないモバイル開発の秘訣
 
Cordovaの最近ホットな話題と地雷をまとめて紹介
Cordovaの最近ホットな話題と地雷をまとめて紹介Cordovaの最近ホットな話題と地雷をまとめて紹介
Cordovaの最近ホットな話題と地雷をまとめて紹介
 
Windows ストアアプリから使かえるセンサーAPIとデバイスAPI
Windows ストアアプリから使かえるセンサーAPIとデバイスAPIWindows ストアアプリから使かえるセンサーAPIとデバイスAPI
Windows ストアアプリから使かえるセンサーAPIとデバイスAPI
 
Monacaでつくるハイブリッドアプリ
MonacaでつくるハイブリッドアプリMonacaでつくるハイブリッドアプリ
Monacaでつくるハイブリッドアプリ
 
Monaca+Onsen UIで作るアプリ事始め
Monaca+Onsen UIで作るアプリ事始めMonaca+Onsen UIで作るアプリ事始め
Monaca+Onsen UIで作るアプリ事始め
 
モバイルアプリ開発の現状
モバイルアプリ開発の現状モバイルアプリ開発の現状
モバイルアプリ開発の現状
 
HTML5ハイブリッドアプリ開発 で拓くビジネスチャンス
HTML5ハイブリッドアプリ開発で拓くビジネスチャンスHTML5ハイブリッドアプリ開発で拓くビジネスチャンス
HTML5ハイブリッドアプリ開発 で拓くビジネスチャンス
 
ネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについて
ネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについてネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについて
ネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについて
 
Html5/JSモバイルアプリ最前線
Html5/JSモバイルアプリ最前線Html5/JSモバイルアプリ最前線
Html5/JSモバイルアプリ最前線
 
PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化
 
その Web サイト、その Web アプリを最新の IE11 に対応しよう
その Web サイト、その Web アプリを最新の IE11 に対応しようその Web サイト、その Web アプリを最新の IE11 に対応しよう
その Web サイト、その Web アプリを最新の IE11 に対応しよう
 
~新しい着回しと出会おう~ 『XZ(クローゼット)』 を支える技術 -Cordova編-
~新しい着回しと出会おう~ 『XZ(クローゼット)』 を支える技術 -Cordova編-~新しい着回しと出会おう~ 『XZ(クローゼット)』 を支える技術 -Cordova編-
~新しい着回しと出会おう~ 『XZ(クローゼット)』 を支える技術 -Cordova編-
 
エンタープライズ要件に対応する高品質なCordovaアプリ開発のポイント
エンタープライズ要件に対応する高品質なCordovaアプリ開発のポイントエンタープライズ要件に対応する高品質なCordovaアプリ開発のポイント
エンタープライズ要件に対応する高品質なCordovaアプリ開発のポイント
 
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンスHTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
 
Cordovaで作る!センサと超小型BLEモジュールを用いた簡単IoTアプリ開発
Cordovaで作る!センサと超小型BLEモジュールを用いた簡単IoTアプリ開発Cordovaで作る!センサと超小型BLEモジュールを用いた簡単IoTアプリ開発
Cordovaで作る!センサと超小型BLEモジュールを用いた簡単IoTアプリ開発
 
もっと良くなるHTMLアプリケーション設計と実装
もっと良くなるHTMLアプリケーション設計と実装もっと良くなるHTMLアプリケーション設計と実装
もっと良くなるHTMLアプリケーション設計と実装
 
iOS/Android/Windows クロスプラットフォーム モバイルアプリ開発
iOS/Android/Windows クロスプラットフォーム モバイルアプリ開発iOS/Android/Windows クロスプラットフォーム モバイルアプリ開発
iOS/Android/Windows クロスプラットフォーム モバイルアプリ開発
 
Monacaエンタープライズのご紹介
Monacaエンタープライズのご紹介Monacaエンタープライズのご紹介
Monacaエンタープライズのご紹介
 
Cordova を使って本気で商用ハイブリッドアプリ開発をやってみた
Cordova を使って本気で商用ハイブリッドアプリ開発をやってみたCordova を使って本気で商用ハイブリッドアプリ開発をやってみた
Cordova を使って本気で商用ハイブリッドアプリ開発をやってみた
 
完全負け組なモバイルWebが、これから復活する(多分)
完全負け組なモバイルWebが、これから復活する(多分)完全負け組なモバイルWebが、これから復活する(多分)
完全負け組なモバイルWebが、これから復活する(多分)
 

Similaire à ハイブリッドアプリ開発最前線から見たHtml5の理想と現実

ICT ERA+ABC 2012東北講演
ICT ERA+ABC 2012東北講演ICT ERA+ABC 2012東北講演
ICT ERA+ABC 2012東北講演
Monaca
 
HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解
Monaca
 
開発事例に学ぶHtml5アプリのポイント
開発事例に学ぶHtml5アプリのポイント開発事例に学ぶHtml5アプリのポイント
開発事例に学ぶHtml5アプリのポイント
Monaca
 
事例で学ぶHTML5スマフォアプリ開発セミナー
事例で学ぶHTML5スマフォアプリ開発セミナー事例で学ぶHTML5スマフォアプリ開発セミナー
事例で学ぶHTML5スマフォアプリ開発セミナー
Monaca
 
iPhone、Android両対応アプリ開発講座 概論
iPhone、Android両対応アプリ開発講座 概論iPhone、Android両対応アプリ開発講座 概論
iPhone、Android両対応アプリ開発講座 概論
Takakuni Furukawa
 
Html5 seminar 1_pac
Html5 seminar 1_pacHtml5 seminar 1_pac
Html5 seminar 1_pac
1PAC. INC.
 
HTML5ハイブリッド アプリ開発実践編
HTML5ハイブリッド アプリ開発実践編HTML5ハイブリッド アプリ開発実践編
HTML5ハイブリッド アプリ開発実践編
Monaca
 
Webエンジニアによるスマートフォンアプリ開発
Webエンジニアによるスマートフォンアプリ開発Webエンジニアによるスマートフォンアプリ開発
Webエンジニアによるスマートフォンアプリ開発
takeuchi-tk
 

Similaire à ハイブリッドアプリ開発最前線から見たHtml5の理想と現実 (20)

企画者が押さえておきたいHtml5アプリ開発の要点
企画者が押さえておきたいHtml5アプリ開発の要点企画者が押さえておきたいHtml5アプリ開発の要点
企画者が押さえておきたいHtml5アプリ開発の要点
 
ICT ERA+ABC 2012東北講演
ICT ERA+ABC 2012東北講演ICT ERA+ABC 2012東北講演
ICT ERA+ABC 2012東北講演
 
HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解
 
開発事例に学ぶHtml5アプリのポイント
開発事例に学ぶHtml5アプリのポイント開発事例に学ぶHtml5アプリのポイント
開発事例に学ぶHtml5アプリのポイント
 
いまさら聞けない!HTML5超入門
いまさら聞けない!HTML5超入門いまさら聞けない!HTML5超入門
いまさら聞けない!HTML5超入門
 
ハイブリッドアプリ開発ビジネス支援
ハイブリッドアプリ開発ビジネス支援ハイブリッドアプリ開発ビジネス支援
ハイブリッドアプリ開発ビジネス支援
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向
 
Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)
 
Html5超入門
Html5超入門Html5超入門
Html5超入門
 
マルチデバイスへ広がる最新動画配信とビジネス現場への活かし方
マルチデバイスへ広がる最新動画配信とビジネス現場への活かし方マルチデバイスへ広がる最新動画配信とビジネス現場への活かし方
マルチデバイスへ広がる最新動画配信とビジネス現場への活かし方
 
事例で学ぶHTML5スマフォアプリ開発セミナー
事例で学ぶHTML5スマフォアプリ開発セミナー事例で学ぶHTML5スマフォアプリ開発セミナー
事例で学ぶHTML5スマフォアプリ開発セミナー
 
NSA NB委員会セミナー「モバイルアプリ開発業務におけるmonacaの活用」
NSA NB委員会セミナー「モバイルアプリ開発業務におけるmonacaの活用」NSA NB委員会セミナー「モバイルアプリ開発業務におけるmonacaの活用」
NSA NB委員会セミナー「モバイルアプリ開発業務におけるmonacaの活用」
 
iPhone、Android両対応アプリ開発講座 概論
iPhone、Android両対応アプリ開発講座 概論iPhone、Android両対応アプリ開発講座 概論
iPhone、Android両対応アプリ開発講座 概論
 
Community_Board on WordPress With mobile application
Community_Board on WordPress With mobile applicationCommunity_Board on WordPress With mobile application
Community_Board on WordPress With mobile application
 
20110824 android apps_tanaka
20110824 android apps_tanaka20110824 android apps_tanaka
20110824 android apps_tanaka
 
Html5 seminar 1_pac
Html5 seminar 1_pacHtml5 seminar 1_pac
Html5 seminar 1_pac
 
HTML5ハイブリッド アプリ開発実践編
HTML5ハイブリッド アプリ開発実践編HTML5ハイブリッド アプリ開発実践編
HTML5ハイブリッド アプリ開発実践編
 
AppPot製品概要
AppPot製品概要AppPot製品概要
AppPot製品概要
 
20110824 android apps_endo
20110824 android apps_endo20110824 android apps_endo
20110824 android apps_endo
 
Webエンジニアによるスマートフォンアプリ開発
Webエンジニアによるスマートフォンアプリ開発Webエンジニアによるスマートフォンアプリ開発
Webエンジニアによるスマートフォンアプリ開発
 

Plus de Monaca

New things about Cordova 4.0
New things about Cordova 4.0New things about Cordova 4.0
New things about Cordova 4.0
Monaca
 
LODチャレンジデー オープンデータを利用したサンプルアプリ
LODチャレンジデー オープンデータを利用したサンプルアプリLODチャレンジデー オープンデータを利用したサンプルアプリ
LODチャレンジデー オープンデータを利用したサンプルアプリ
Monaca
 
第6回LODチャレンジデー Monaca紹介資料
第6回LODチャレンジデー Monaca紹介資料第6回LODチャレンジデー Monaca紹介資料
第6回LODチャレンジデー Monaca紹介資料
Monaca
 
Monacaで簡単スマートフォンアプリ開発体験講座
Monacaで簡単スマートフォンアプリ開発体験講座Monacaで簡単スマートフォンアプリ開発体験講座
Monacaで簡単スマートフォンアプリ開発体験講座
Monaca
 

Plus de Monaca (16)

クロスプラットフォーム開発を可能にするMonaca
クロスプラットフォーム開発を可能にするMonacaクロスプラットフォーム開発を可能にするMonaca
クロスプラットフォーム開発を可能にするMonaca
 
展示会出展を成功させるたった一つのこと
展示会出展を成功させるたった一つのこと展示会出展を成功させるたった一つのこと
展示会出展を成功させるたった一つのこと
 
クロスプラットフォーム開発を可能にするMonacaとそのセキュリティ対策
クロスプラットフォーム開発を可能にするMonacaとそのセキュリティ対策クロスプラットフォーム開発を可能にするMonacaとそのセキュリティ対策
クロスプラットフォーム開発を可能にするMonacaとそのセキュリティ対策
 
LT「料金プラン改定後のMonacaについて」
LT「料金プラン改定後のMonacaについて」LT「料金プラン改定後のMonacaについて」
LT「料金プラン改定後のMonacaについて」
 
クロスプラットフォーム活用のポイント
クロスプラットフォーム活用のポイントクロスプラットフォーム活用のポイント
クロスプラットフォーム活用のポイント
 
US Meetup Tour
US Meetup TourUS Meetup Tour
US Meetup Tour
 
New things about Cordova 4.0
New things about Cordova 4.0New things about Cordova 4.0
New things about Cordova 4.0
 
Cordova and PhoneGap Insights
Cordova and PhoneGap InsightsCordova and PhoneGap Insights
Cordova and PhoneGap Insights
 
Using PhoneGap to develop incredible HTML5 hybrid mobile apps
Using PhoneGap to develop incredible HTML5 hybrid mobile appsUsing PhoneGap to develop incredible HTML5 hybrid mobile apps
Using PhoneGap to develop incredible HTML5 hybrid mobile apps
 
How to make Twitter app with PhoneGap/Cordova
How to make Twitter app with PhoneGap/CordovaHow to make Twitter app with PhoneGap/Cordova
How to make Twitter app with PhoneGap/Cordova
 
高いUXをハイブリッド開発で実現するためのポイント
高いUXをハイブリッド開発で実現するためのポイント高いUXをハイブリッド開発で実現するためのポイント
高いUXをハイブリッド開発で実現するためのポイント
 
LODチャレンジデー オープンデータを利用したサンプルアプリ
LODチャレンジデー オープンデータを利用したサンプルアプリLODチャレンジデー オープンデータを利用したサンプルアプリ
LODチャレンジデー オープンデータを利用したサンプルアプリ
 
第6回LODチャレンジデー Monaca紹介資料
第6回LODチャレンジデー Monaca紹介資料第6回LODチャレンジデー Monaca紹介資料
第6回LODチャレンジデー Monaca紹介資料
 
Android Bazaar Conference講演資料「Onsen UIデビュー!」
Android Bazaar Conference講演資料「Onsen UIデビュー!」Android Bazaar Conference講演資料「Onsen UIデビュー!」
Android Bazaar Conference講演資料「Onsen UIデビュー!」
 
Monacaで簡単スマートフォンアプリ開発体験講座
Monacaで簡単スマートフォンアプリ開発体験講座Monacaで簡単スマートフォンアプリ開発体験講座
Monacaで簡単スマートフォンアプリ開発体験講座
 
PhoneGapユーザー会@大阪 講演資料
PhoneGapユーザー会@大阪 講演資料PhoneGapユーザー会@大阪 講演資料
PhoneGapユーザー会@大阪 講演資料
 

ハイブリッドアプリ開発最前線から見たHtml5の理想と現実

  • 1. ハイブリッドアプリ開発最前線から見た HTML5の理想と現実 アシアル株式会社 田中正裕 http://www.asial.co.jp URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 1
  • 2. 自己紹介 田中正裕 (たなかまさひろ) 2002年 アシアル株式会社を創業 2013年現在 今に至る fb, Twitter: 特にやっていません・・・ 趣味: 軽飛行機 URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 2
  • 4. ハイブリッドアプリとは? URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 4
  • 5. モバイルに関するお話です URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 5
  • 6. さまざまなモバイルOSが混在 出典: VisionMobile estimates, IDC, Canalys, Gartner, OS vendors URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 6
  • 7. どんどん増えるモバイルOS URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 7
  • 8. どれも最新のブラウザー性能 URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 8
  • 9. HTML5でWebアプリ 対応ブラウザーがあればどのOSの上でも動作するのが魅力 index.html style.css script.js インターネット 対応ブラウザー URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 9
  • 10. HTML5かネイティブか “企業としての最大の失敗 http://fb.html5isready.com/ はネイティブアプリではな くHTML5に賭けすぎたこと です。時期尚早でした。” と話した。“iOSアプリに したら、利用者のフィード の消費が2倍になりまし た。” “Facebookモバイルアプリケー ションの動作が遅いのはHTML5の せいなんかじゃない。 我々は現 代のスマートフォンのブラウ ザーの能力やHTML5の豊な能力を 知っていました。” URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 10
  • 11. Webアプリの利点と弱点 出典: Developer Economics 2013 URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 11
  • 12. Webアプリの利点と弱点 HTML5を選択した理由 ・クロスプラットフォームのコード 移植性 ・低コスト開発 ・クロススクリーンのコード移植性 ・学習コストの低さ ・オープンソース ・リーチ(検索エンジンなど) ・開発コミュニティーの充実 出典: Developer Economics 2013 URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 12
  • 14. Webアプリとネイティブアプリの比較 Webアプリ ネイティブアプリ 開発言語 HTML5とJavaScript Objective-CやJava Webブラウザーが備える 端末やOSが持つすべての 機能 機能のみ利用可能 機能を利用可能 通常のWeb開発環境 XcodeやEclipseといったOSごとの開発 開発環境 エディタ、Dreamweaver等 環境 ○ × クロスプラットフォーム 同じJavaScriptコードを流用可 開発言語自体が異なる △ ◎ 実行速度 Webブラウザーが実行エンジン OSが直接実行する × ◎ オフライン対応 キャッシュを用いて一部オフライン対 端末内にプログラムが配置 応も可能 Webサイトにアクセス アプリの配布方法 マーケットの登録が原則 マーケットへの登録は不可 サーバーから配信するため アップデートのたびにマーケット登録。 メンテナンス方法 常に最新状態をキープ可能 更新はユーザー次第 URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 14
  • 15. 超えられないブラウザーの「壁」 • デバイス機能(いわゆるDevice API)のサポー トが限定的 – カメラ撮影、Bluetooth、NFC、OpenGLなど・・・ • OS機能をフルに使えない – アドレス帳、プッシュ通信、ホームウィジェットなど・・・ • アプリマーケットでの課金ができない • JavaScriptの言語仕様を超えられない URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 15
  • 16. 超えられないブラウザーの「壁」 • デバイス機能(いわゆるDevice API)のサポー トが限定的 – カメラ撮影、Bluetooth、NFC、OpenGLなど・・・ ハイブリッドアプリ • OS機能をフルに使えない を試してみては? – アドレス帳、プッシュ通信、ホームウィジェットなど・・・ • アプリマーケットでの課金ができない • JavaScriptの言語仕様を超えられない URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 16
  • 17. ウェブ+ネイティブ=ハイブリッド index.html style.css script.js ウェブ ハイブリッド = + ネイティブ URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 17
  • 18. ハイブリッドアプリの特徴 GPS HTML/JS/CSS ネイティブ側も拡張可能 ネイティブコード (いわゆるWebView) ハイブリッドアプリの パッケージ カメラ サーバーとの通信は Webアプリではアクセスできない 各種ネイティブAPIを実行できる AjaxとかWebSocket 連絡帳 など URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 18
  • 19. ハイブリッド化を後押しするもの • BYOD・コンシューマライゼーションへの適用性 – 『2016年には、企業向けアプリの50%以上はハイブリッドアプリとな るだろう』2013年2月4日、Gartner • 低コスト・RADなソリューションとしての開発手法 – プロトタイプと本開発を一気に進められる • Windows 8、Firefox OS、Tizenなどの新プラットフォームにお いても、ハイブリッドアプリを低コストに移植可能 – これらはネイティブでHTML5アプリが動作する URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 19
  • 20. 構築技術・開発環境 言語 Objective-C Java + FW + iOS SDK Android SDK Zepto.js jQuery Mobile Sencha Touch ウェブ ネイティブ 開発環境 URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 20
  • 21. PhoneGap (Cordova) API = 加速度センサー 端末に内蔵された加速度センサーを読み取り、端末の傾きを取得する カメラ 端末のカメラやアルバムにアクセスし、写真を取得する ビデオキャプチャー ビデオを録画する オーディオ録音・再生 オーディオを録音したり、再生する コンパス 端末の向きを方位情報として取得する 接続状態確認 OSのネットワーク接続状態を取得する アドレス帳 OSの連絡帳にアクセスし、情報の入出力を行う デバイス情報 デバイスのモデル名や端末IDなどの取得や、OS情報を取得する ハードウェアボタン Android端末の持つ各種ボタンに対するイベントを取得する ファイルシステム OSのファイルシステムにアクセスし、ファイルの入出力を行う GPS GPSセンサーにアクセスし、現在の緯度経度を取得する 国際化 OSの利用言語や各種ロケール情報を参照する バイブレーター バイブレーターを実行する スプラッシュ操作 起動時に表示されるスプラッシュ画面を制御する SQLデータベース SQLデータベースにアクセスする URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 21
  • 22. ハイブリッドアプリ構築事例 auヘッドライン KDDI株式会社 名刺管理: Eight テレ朝動画アプリ シューズファインダー © 三三株式会社 © 株式会社テレビ朝日 © 株式会社アシックス URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 22
  • 23. ハイブリッドアプリの課題 デバッグのしやすさ そこでMonacaの登場 完全なクロスプラットフォーム開発の難しさ フルネイティブと比較した時のヌルサク感 URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 23
  • 24. Monacaとは? クラウド×HTML5 ハイブリッドアプリ開発環境 『誰でも今日からアプリ開発。』 HTML5ベースの ビルド& 開発環境 デバッガー URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 24
  • 25. Monacaサービス一覧 すべて無料でお使い頂けます ① ブラウザーベースのクラウドIDE ② PhoneGapベースのFW Monacaフレームワーク Available on GitHub ③ デバッグ用ツール Monacaデバッガー http://monaca.mobi/ URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 25
  • 26. ビルド機能 HTML、JavaScript、CSSエディター プロジェクト管理 デベロッパーコンソールとかFirebugのような インスペクター&JavaScriptコンソール URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 26
  • 27. DEMOの前に 私がデモをするその前に... Androidをお持ちの皆様は、ぜひGoogle Playから 「Monacaデバッガー」をインストールしてください (最新版:バージョン1.6.1) インストール後、Monacaデバッガーでログインをお願いします。 メールアドレス: html5 パスワード: monaca ※本アカウントは講演終了後に削除しますのでご了承ください ※最大10端末程度でログインすることを想定しています(汗 http://monaca.mobi/ URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 27
  • 28. 「Eight」で見るMonaca独自の機能 • iOS、Androidに対応した名刺管理アプリケーション • Monacaを用いたハイブリッドアプリとして開発 Eight - つなげて育つ名刺帳 • フレームワークはPhoneGapとZepto.jsを使用 ストアから無料DL URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 28
  • 29. HTML5の苦手部分を補うためのネイティブ機能 ネイティブ ネイティブ HTML5/CSS HTML5/CSS ネイティブ HTML5/CSS ネイティブ URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 29
  • 30. ネイティブ機能を用いたアニメーション HTML5アプリ最大の弱点は アニメーション品質が低いこと。 Eightではネイティブ機能を用いて 高品質な画面遷移を実現した。 URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 30
  • 31. ハイブリッドアプリの課題 • ネイティブと同じルック&フィールドの実現 – どうしても比較されてしまう • JavaScriptの書き方によるばらつきが大きい – 特にDOM操作にボトルネックが発生しやすい • ネイティブ機能を使えば使うほど複雑に – あわせてポータビリティも低下 • セキュリティに注意! URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 31
  • 32. まとめ • 低コスト・クロスプラットフォームなモバイルアプリ開 発手段として、ハイブリッドアプリは有効 • 業務アプリやフロントエンド系アプリでの第一候補 • 国内でのノウハウの蓄積は浅く、これから情報共有が進 んでいくと考えられる プラス、Monacaを是非使って遊んでみてください URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 32
  • 33. 誰でも今日からアプリ開発。 URL : http://www.asial.co.jp/ │ Copyright © 2013 Asial Corporation. All Rights Reserved. │ 2013/2/15 | 33