SlideShare a Scribd company logo
1 of 27
Download to read offline
Bringing More People To Apps
Cordovaの特徴と
開発手法概要
アシアル株式会社 生形 可奈子
1
Bringing More People To Apps
生形可奈子(うぶかたかなこ)
アシアル株式会社
Monacaエバンジェリスト
2
Cordova
の章
Bringing More People To Apps
Cordovaとは?
3
Bringing More People To Apps
HTML5アプリ用フレームワーク
Cordova
Apacheソフトウェア財団
PhoneGap
アドビシステムズ
4
Bringing More People To Apps
Cordova?PhoneGap?
 2008年、Nitobi社がPhoneGapを開発。
 2011年、Adobe社がNitobi社を買収。
PhoneGapはApache財団に寄贈され、名称を「Cordova」に変更。
同時に「PhoneGap」はAdobeの登録商標に。
5
Bringing More People To Apps
Cordovaコミッターの会合@マイクロソフト 6
Bringing More People To Apps
Web標準技術(HTML/CSS/JavaScript)
でアプリ開発
 WebView上にHTMLをロードしてUIを作成するので、Web開
発と同じ方法でモバイルアプリ開発が可能
7
Bringing More People To Apps
Cordovaの仕組み 8
Cordova層
HTML5層
(WebView)
アプリ本体はHTML5で実装
CordovaがOSに合わせた
ネイティブコードを提供
OS
1. JavaScriptでAPI実行
2. Cordovaがネイティブ
機能を実行
Bringing More People To Apps
プラグインでネイティブ機能を拡張
 ネイティブの各種機能は、プラグイン形式で実装されている
 標準プラグインの他にも、第三者によって提供されたプラグインを
取り込んで機能を拡張できる
9
標準プラグイン
・カメラ
・位置情報
・電話帳
・加速度センサー
・ファイルアクセス
サードパーティ製
プラグイン
・Bluetooth
・プッシュ通知
・アプリ内課金
・バーコード読取
・IoT
自作プラグイン
Bringing More People To Apps
事例:タニタヘルスプラネット
▶ 体組成計連携の健康管理アプリを2ヶ月で開発
▶ Bluetooth、NFCを使って専用の体組成計、歩数計からデータを自
動で受け取ることが可能
10
Bringing More People To Apps
CordovaはCross PlatformツールNo.1 11
61%
35%
31%
18%
15%
13%
12%
9%
4%
3%
0% 10% 20% 30% 40% 50% 60% 70%
PhoneGap/Cordova
Xamarin
Unity
Qt
Adobe Air
Appcelerator
Corona
Marmelade
Codename One
Live Code
Using this tool
Vision Mobile Analysis of Cross-Platform Development, July 2015
Bringing More People To Apps
様々なソリューションがCordovaを採用 12
Bringing More People To Apps
Cordovaの課題?
13
Bringing More People To Apps
Cordovaの課題としてしばしば挙げられ
るもの
1. パフォーマンス
2. 脆弱性対策
14
Bringing More People To Apps
端末の大幅な進化
初代Xperia Xperia Z 5
発売日: 2010年4月
Android 1.6 (後に2.1)
1GHz シングルコアCPU
384MBメモリー
ベンチマークスコア: 3361
発売日: 2016年6月
Android 6.0
2GHz クワッド(8)コアCPU
3GBメモリー
ベンチマークスコア: 52084
5年間で20倍もの
スピードアップ
15
Bringing More People To Apps
HTML5アプリ向けUIフレームワークの登
場
16
Bringing More People To Apps
Onsen UI
 ハイパフォーマンスなUIを実現
 プラットフォームを判別して自動でスタイルが変化
17
Bringing More People To Apps
豊富なUIパーツを利用可能 18
Bringing More People To Apps
使い方は独自タグを記述するだけの簡単設
計
<ons-toolbar></ons-toolbar>
<ons-list-item></ons-list-item>
<ons-tabbar></ons-tabbar>
19
Bringing More People To Apps
様々なJSフレームワークとの組み合わせ
が可能
20
Bringing More People To Apps
事例:ジャパンネット銀行
残高確認アプリ
▶Onsen UIでネイティブと遜色ないUIを実現
21
Bringing More People To Apps
Cordovaの脆弱性に関する問題 22
Bringing More People To Apps
Cordovaアプリにおける脆弱性の種類 23
1. Cordovaに依存する脆弱性
▶ 最新バージョンのCordovaを利用する
2. アプリの実装に依存する脆弱性
▶ Webアプリと同様にXSS対策などが必要
3. WebViewに依存する脆弱性
▶ Android5.0以降はGoogle Playから随時アップデートされる
Bringing More People To Apps
古いWebViewが抱える問題
 Android4.4まではWebViewがOSに付属するため、アップデートは
メーカーから提供される(脆弱性放置の危険性)
 GoogleがAndroid4.3以前のWebViewに対するセキュリティパッ
チの提供を終了した
24
Bringing More People To Apps
Crosswalk使用通常のCordovaアプリ
Androidアプリ
 ChromiumベースのWebView
 アプリ内に埋め込んで配布することが可能
Androidアプリ
端末の
WebView
Intel Crosswalk 25
Bringing More People To Apps
Cordova開発におけるポイントまとめ
 Webの技術でクロスプラットフォーム開発
 Web技術者のスキルを活用
 既存システムの流用が可能
 Web技術でもネイティブ機能が利用可
 パフォーマンスやセキュリティ対策ツールも完備
 UIフレームワークやCrosswalkの導入はほぼ必須
26
Bringing More People To Apps
Monacaもよろしくお願いします!
 15万人が利用するCordova開発環境(IDE)
 実機によるリアルタイム検証が可能
 WindowsマシンでもiOSアプリ開発OK
https://ja.monaca.io/
27

More Related Content

What's hot

イマドキ!ユースケース別に見るAWS IoT への接続パターン
イマドキ!ユースケース別に見るAWS IoT への接続パターンイマドキ!ユースケース別に見るAWS IoT への接続パターン
イマドキ!ユースケース別に見るAWS IoT への接続パターンseiichi arai
 
メルペイの与信モデリングで安全・安心のために実践していること
メルペイの与信モデリングで安全・安心のために実践していることメルペイの与信モデリングで安全・安心のために実践していること
メルペイの与信モデリングで安全・安心のために実践していることYuhi Kawakami
 
[DLHacks 実装] DeepPose: Human Pose Estimation via Deep Neural Networks
[DLHacks 実装] DeepPose: Human Pose Estimation via Deep Neural Networks[DLHacks 実装] DeepPose: Human Pose Estimation via Deep Neural Networks
[DLHacks 実装] DeepPose: Human Pose Estimation via Deep Neural NetworksDeep Learning JP
 
【メタサーベイ】Vision and Language のトップ研究室/研究者
【メタサーベイ】Vision and Language のトップ研究室/研究者【メタサーベイ】Vision and Language のトップ研究室/研究者
【メタサーベイ】Vision and Language のトップ研究室/研究者cvpaper. challenge
 
「機械学習:技術的負債の高利子クレジットカード」のまとめ
「機械学習:技術的負債の高利子クレジットカード」のまとめ「機械学習:技術的負債の高利子クレジットカード」のまとめ
「機械学習:技術的負債の高利子クレジットカード」のまとめRecruit Technologies
 
なぜOpenID Connectが必要となったのか、その歴史的背景
なぜOpenID Connectが必要となったのか、その歴史的背景なぜOpenID Connectが必要となったのか、その歴史的背景
なぜOpenID Connectが必要となったのか、その歴史的背景Tatsuo Kudo
 
深層学習によるHuman Pose Estimationの基礎
深層学習によるHuman Pose Estimationの基礎深層学習によるHuman Pose Estimationの基礎
深層学習によるHuman Pose Estimationの基礎Takumi Ohkuma
 
Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」
Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」
Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」Tatsuo Kudo
 
OpenID Connect Client Initiated Backchannel Authentication Flow (CIBA)のご紹介 ~ ...
OpenID Connect Client Initiated Backchannel Authentication Flow (CIBA)のご紹介 ~ ...OpenID Connect Client Initiated Backchannel Authentication Flow (CIBA)のご紹介 ~ ...
OpenID Connect Client Initiated Backchannel Authentication Flow (CIBA)のご紹介 ~ ...OpenID Foundation Japan
 
先駆者に学ぶ MLOpsの実際
先駆者に学ぶ MLOpsの実際先駆者に学ぶ MLOpsの実際
先駆者に学ぶ MLOpsの実際Tetsutaro Watanabe
 
事業成長にコミットするエンジニア組織への道のり
事業成長にコミットするエンジニア組織への道のり事業成長にコミットするエンジニア組織への道のり
事業成長にコミットするエンジニア組織への道のりRecruit Lifestyle Co., Ltd.
 
Apache Avro vs Protocol Buffers
Apache Avro vs Protocol BuffersApache Avro vs Protocol Buffers
Apache Avro vs Protocol BuffersSeiya Mizuno
 
分散学習のあれこれ~データパラレルからモデルパラレルまで~
分散学習のあれこれ~データパラレルからモデルパラレルまで~分散学習のあれこれ~データパラレルからモデルパラレルまで~
分散学習のあれこれ~データパラレルからモデルパラレルまで~Hideki Tsunashima
 
SSII2022 [OS1-01] AI時代のチームビルディング
SSII2022 [OS1-01] AI時代のチームビルディングSSII2022 [OS1-01] AI時代のチームビルディング
SSII2022 [OS1-01] AI時代のチームビルディングSSII
 
メルペイの与信モデリングにおける特徴量の品質向上の施策
メルペイの与信モデリングにおける特徴量の品質向上の施策メルペイの与信モデリングにおける特徴量の品質向上の施策
メルペイの与信モデリングにおける特徴量の品質向上の施策Mai Nakagawa
 
モデル高速化百選
モデル高速化百選モデル高速化百選
モデル高速化百選Yusuke Uchida
 
MLP-Mixer: An all-MLP Architecture for Vision
MLP-Mixer: An all-MLP Architecture for VisionMLP-Mixer: An all-MLP Architecture for Vision
MLP-Mixer: An all-MLP Architecture for VisionKazuyuki Miyazawa
 
Transformer 動向調査 in 画像認識(修正版)
Transformer 動向調査 in 画像認識(修正版)Transformer 動向調査 in 画像認識(修正版)
Transformer 動向調査 in 画像認識(修正版)Kazuki Maeno
 

What's hot (20)

Linked Data (再)入門
Linked Data (再)入門Linked Data (再)入門
Linked Data (再)入門
 
イマドキ!ユースケース別に見るAWS IoT への接続パターン
イマドキ!ユースケース別に見るAWS IoT への接続パターンイマドキ!ユースケース別に見るAWS IoT への接続パターン
イマドキ!ユースケース別に見るAWS IoT への接続パターン
 
メルペイの与信モデリングで安全・安心のために実践していること
メルペイの与信モデリングで安全・安心のために実践していることメルペイの与信モデリングで安全・安心のために実践していること
メルペイの与信モデリングで安全・安心のために実践していること
 
[DLHacks 実装] DeepPose: Human Pose Estimation via Deep Neural Networks
[DLHacks 実装] DeepPose: Human Pose Estimation via Deep Neural Networks[DLHacks 実装] DeepPose: Human Pose Estimation via Deep Neural Networks
[DLHacks 実装] DeepPose: Human Pose Estimation via Deep Neural Networks
 
【メタサーベイ】Vision and Language のトップ研究室/研究者
【メタサーベイ】Vision and Language のトップ研究室/研究者【メタサーベイ】Vision and Language のトップ研究室/研究者
【メタサーベイ】Vision and Language のトップ研究室/研究者
 
「機械学習:技術的負債の高利子クレジットカード」のまとめ
「機械学習:技術的負債の高利子クレジットカード」のまとめ「機械学習:技術的負債の高利子クレジットカード」のまとめ
「機械学習:技術的負債の高利子クレジットカード」のまとめ
 
研究の呪い
研究の呪い研究の呪い
研究の呪い
 
なぜOpenID Connectが必要となったのか、その歴史的背景
なぜOpenID Connectが必要となったのか、その歴史的背景なぜOpenID Connectが必要となったのか、その歴史的背景
なぜOpenID Connectが必要となったのか、その歴史的背景
 
深層学習によるHuman Pose Estimationの基礎
深層学習によるHuman Pose Estimationの基礎深層学習によるHuman Pose Estimationの基礎
深層学習によるHuman Pose Estimationの基礎
 
Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」
Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」
Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」
 
OpenID Connect Client Initiated Backchannel Authentication Flow (CIBA)のご紹介 ~ ...
OpenID Connect Client Initiated Backchannel Authentication Flow (CIBA)のご紹介 ~ ...OpenID Connect Client Initiated Backchannel Authentication Flow (CIBA)のご紹介 ~ ...
OpenID Connect Client Initiated Backchannel Authentication Flow (CIBA)のご紹介 ~ ...
 
先駆者に学ぶ MLOpsの実際
先駆者に学ぶ MLOpsの実際先駆者に学ぶ MLOpsの実際
先駆者に学ぶ MLOpsの実際
 
事業成長にコミットするエンジニア組織への道のり
事業成長にコミットするエンジニア組織への道のり事業成長にコミットするエンジニア組織への道のり
事業成長にコミットするエンジニア組織への道のり
 
Apache Avro vs Protocol Buffers
Apache Avro vs Protocol BuffersApache Avro vs Protocol Buffers
Apache Avro vs Protocol Buffers
 
分散学習のあれこれ~データパラレルからモデルパラレルまで~
分散学習のあれこれ~データパラレルからモデルパラレルまで~分散学習のあれこれ~データパラレルからモデルパラレルまで~
分散学習のあれこれ~データパラレルからモデルパラレルまで~
 
SSII2022 [OS1-01] AI時代のチームビルディング
SSII2022 [OS1-01] AI時代のチームビルディングSSII2022 [OS1-01] AI時代のチームビルディング
SSII2022 [OS1-01] AI時代のチームビルディング
 
メルペイの与信モデリングにおける特徴量の品質向上の施策
メルペイの与信モデリングにおける特徴量の品質向上の施策メルペイの与信モデリングにおける特徴量の品質向上の施策
メルペイの与信モデリングにおける特徴量の品質向上の施策
 
モデル高速化百選
モデル高速化百選モデル高速化百選
モデル高速化百選
 
MLP-Mixer: An all-MLP Architecture for Vision
MLP-Mixer: An all-MLP Architecture for VisionMLP-Mixer: An all-MLP Architecture for Vision
MLP-Mixer: An all-MLP Architecture for Vision
 
Transformer 動向調査 in 画像認識(修正版)
Transformer 動向調査 in 画像認識(修正版)Transformer 動向調査 in 画像認識(修正版)
Transformer 動向調査 in 画像認識(修正版)
 

Viewers also liked

160407 cordova勉強会
160407 cordova勉強会160407 cordova勉強会
160407 cordova勉強会elephancube
 
WinJS, Apache Cordova & NFC - HTML5 apps for Android and Windows Phone
WinJS, Apache Cordova & NFC - HTML5 apps for Android and Windows PhoneWinJS, Apache Cordova & NFC - HTML5 apps for Android and Windows Phone
WinJS, Apache Cordova & NFC - HTML5 apps for Android and Windows PhoneAndreas Jakl
 
cordova/electronの構造を知る
cordova/electronの構造を知るcordova/electronの構造を知る
cordova/electronの構造を知るYasuharu Seki
 
20141030 html5j-firefox os-deviceapi
20141030 html5j-firefox os-deviceapi20141030 html5j-firefox os-deviceapi
20141030 html5j-firefox os-deviceapiNoritada Shimizu
 
HTML5ハイブリッドアプリ開発のベストプラクティス
HTML5ハイブリッドアプリ開発のベストプラクティスHTML5ハイブリッドアプリ開発のベストプラクティス
HTML5ハイブリッドアプリ開発のベストプラクティスアシアル株式会社
 
Windows ストアアプリから使かえるセンサーAPIとデバイスAPI
Windows ストアアプリから使かえるセンサーAPIとデバイスAPIWindows ストアアプリから使かえるセンサーAPIとデバイスAPI
Windows ストアアプリから使かえるセンサーAPIとデバイスAPIOsamu Monoe
 
ウェブ標準デバイス系 API 総集編 2014
ウェブ標準デバイス系 API 総集編 2014ウェブ標準デバイス系 API 総集編 2014
ウェブ標準デバイス系 API 総集編 2014Futomi Hatano
 
Visual Studio 2015 を使用した Cordova アプリの開発
Visual Studio 2015 を使用した Cordova アプリの開発Visual Studio 2015 を使用した Cordova アプリの開発
Visual Studio 2015 を使用した Cordova アプリの開発Osamu Monoe
 
Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2
Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2
Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2Yoshito Tabuchi
 
Chrome Apps のデバイスAPI
Chrome Apps のデバイスAPIChrome Apps のデバイスAPI
Chrome Apps のデバイスAPIyoshikawa_t
 

Viewers also liked (12)

Html5/JSモバイルアプリ最前線
Html5/JSモバイルアプリ最前線Html5/JSモバイルアプリ最前線
Html5/JSモバイルアプリ最前線
 
160407 cordova勉強会
160407 cordova勉強会160407 cordova勉強会
160407 cordova勉強会
 
WinJS, Apache Cordova & NFC - HTML5 apps for Android and Windows Phone
WinJS, Apache Cordova & NFC - HTML5 apps for Android and Windows PhoneWinJS, Apache Cordova & NFC - HTML5 apps for Android and Windows Phone
WinJS, Apache Cordova & NFC - HTML5 apps for Android and Windows Phone
 
cordova/electronの構造を知る
cordova/electronの構造を知るcordova/electronの構造を知る
cordova/electronの構造を知る
 
20141030 html5j-firefox os-deviceapi
20141030 html5j-firefox os-deviceapi20141030 html5j-firefox os-deviceapi
20141030 html5j-firefox os-deviceapi
 
HTML5ハイブリッドアプリ開発のベストプラクティス
HTML5ハイブリッドアプリ開発のベストプラクティスHTML5ハイブリッドアプリ開発のベストプラクティス
HTML5ハイブリッドアプリ開発のベストプラクティス
 
Windows ストアアプリから使かえるセンサーAPIとデバイスAPI
Windows ストアアプリから使かえるセンサーAPIとデバイスAPIWindows ストアアプリから使かえるセンサーAPIとデバイスAPI
Windows ストアアプリから使かえるセンサーAPIとデバイスAPI
 
ウェブ標準デバイス系 API 総集編 2014
ウェブ標準デバイス系 API 総集編 2014ウェブ標準デバイス系 API 総集編 2014
ウェブ標準デバイス系 API 総集編 2014
 
Visual Studio 2015 を使用した Cordova アプリの開発
Visual Studio 2015 を使用した Cordova アプリの開発Visual Studio 2015 を使用した Cordova アプリの開発
Visual Studio 2015 を使用した Cordova アプリの開発
 
Onsen UIが目指すもの
Onsen UIが目指すものOnsen UIが目指すもの
Onsen UIが目指すもの
 
Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2
Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2
Xamarin 概要 @ 「Xamarin」って何? Wエバンジェリストによる特濃「Xamarin」勉強会 Rev2
 
Chrome Apps のデバイスAPI
Chrome Apps のデバイスAPIChrome Apps のデバイスAPI
Chrome Apps のデバイスAPI
 

Similar to Cordovaの特徴と開発手法概要

DeviceConnect向けCordovaプラグインを作ってみた
DeviceConnect向けCordovaプラグインを作ってみたDeviceConnect向けCordovaプラグインを作ってみた
DeviceConnect向けCordovaプラグインを作ってみたDevice WebAPI Consortium
 
【デブサミ関西2014】Web技術で作るエンタープライズアプリ
【デブサミ関西2014】Web技術で作るエンタープライズアプリ【デブサミ関西2014】Web技術で作るエンタープライズアプリ
【デブサミ関西2014】Web技術で作るエンタープライズアプリアシアル株式会社
 
PhoneGapの始め方
PhoneGapの始め方PhoneGapの始め方
PhoneGapの始め方akabana
 
ICT ERA+ABC 2012東北講演
ICT ERA+ABC 2012東北講演ICT ERA+ABC 2012東北講演
ICT ERA+ABC 2012東北講演Monaca
 
Cordova×業務システム:失敗しないモバイル開発の秘訣
Cordova×業務システム:失敗しないモバイル開発の秘訣Cordova×業務システム:失敗しないモバイル開発の秘訣
Cordova×業務システム:失敗しないモバイル開発の秘訣アシアル株式会社
 
120分聞けばドヤ顔で語れる apache cordova スーパー勉強会
120分聞けばドヤ顔で語れる apache cordova スーパー勉強会120分聞けばドヤ顔で語れる apache cordova スーパー勉強会
120分聞けばドヤ顔で語れる apache cordova スーパー勉強会Monaca
 
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンスHTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンスアシアル株式会社
 
Cordova (PhoneGap) で始める、スマホアプリ開発
Cordova (PhoneGap) で始める、スマホアプリ開発Cordova (PhoneGap) で始める、スマホアプリ開発
Cordova (PhoneGap) で始める、スマホアプリ開発Kenichi Inoue
 
PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化Takashi Okamoto
 
Monaca事例から学ぶHTML5モバイルアプリの活用ポイント
Monaca事例から学ぶHTML5モバイルアプリの活用ポイントMonaca事例から学ぶHTML5モバイルアプリの活用ポイント
Monaca事例から学ぶHTML5モバイルアプリの活用ポイントアシアル株式会社
 
DevOps 概要 - インフラ革命、今起きていること
DevOps 概要 - インフラ革命、今起きていることDevOps 概要 - インフラ革命、今起きていること
DevOps 概要 - インフラ革命、今起きていることHiro Fukami
 
クリスマス直前! HTML5 で作る♥ はじめての iOS & Android アプリ開発
クリスマス直前!HTML5 で作る♥はじめての iOS & Android アプリ開発クリスマス直前!HTML5 で作る♥はじめての iOS & Android アプリ開発
クリスマス直前! HTML5 で作る♥ はじめての iOS & Android アプリ開発Osamu Monoe
 
Web標準技術で iOS、Android両対応アプリを開発
Web標準技術でiOS、Android両対応アプリを開発Web標準技術でiOS、Android両対応アプリを開発
Web標準技術で iOS、Android両対応アプリを開発 アシアル株式会社
 
Monacaでつくるハイブリッドアプリ
MonacaでつくるハイブリッドアプリMonacaでつくるハイブリッドアプリ
MonacaでつくるハイブリッドアプリMonaca
 
20120413 nestakabaneworkshop
20120413 nestakabaneworkshop20120413 nestakabaneworkshop
20120413 nestakabaneworkshopYoichiro Sakurai
 
Global engineerlab kawani
Global engineerlab kawaniGlobal engineerlab kawani
Global engineerlab kawaniShin Kawani
 
2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordova2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordovamiso- soup3
 
エンタープライズにおけるiOSアプリ開発で押さえておくべき7つのこと
エンタープライズにおけるiOSアプリ開発で押さえておくべき7つのことエンタープライズにおけるiOSアプリ開発で押さえておくべき7つのこと
エンタープライズにおけるiOSアプリ開発で押さえておくべき7つのことfeedtailor
 
企画者が押さえておきたいHtml5アプリ開発の要点
企画者が押さえておきたいHtml5アプリ開発の要点企画者が押さえておきたいHtml5アプリ開発の要点
企画者が押さえておきたいHtml5アプリ開発の要点Monaca
 
PhoneGap勉強会 in 熊本
PhoneGap勉強会 in 熊本PhoneGap勉強会 in 熊本
PhoneGap勉強会 in 熊本Suguru Murakami
 

Similar to Cordovaの特徴と開発手法概要 (20)

DeviceConnect向けCordovaプラグインを作ってみた
DeviceConnect向けCordovaプラグインを作ってみたDeviceConnect向けCordovaプラグインを作ってみた
DeviceConnect向けCordovaプラグインを作ってみた
 
【デブサミ関西2014】Web技術で作るエンタープライズアプリ
【デブサミ関西2014】Web技術で作るエンタープライズアプリ【デブサミ関西2014】Web技術で作るエンタープライズアプリ
【デブサミ関西2014】Web技術で作るエンタープライズアプリ
 
PhoneGapの始め方
PhoneGapの始め方PhoneGapの始め方
PhoneGapの始め方
 
ICT ERA+ABC 2012東北講演
ICT ERA+ABC 2012東北講演ICT ERA+ABC 2012東北講演
ICT ERA+ABC 2012東北講演
 
Cordova×業務システム:失敗しないモバイル開発の秘訣
Cordova×業務システム:失敗しないモバイル開発の秘訣Cordova×業務システム:失敗しないモバイル開発の秘訣
Cordova×業務システム:失敗しないモバイル開発の秘訣
 
120分聞けばドヤ顔で語れる apache cordova スーパー勉強会
120分聞けばドヤ顔で語れる apache cordova スーパー勉強会120分聞けばドヤ顔で語れる apache cordova スーパー勉強会
120分聞けばドヤ顔で語れる apache cordova スーパー勉強会
 
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンスHTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
HTML5によるモバイルアプリ開発 が拓拓くビジネスチャンス
 
Cordova (PhoneGap) で始める、スマホアプリ開発
Cordova (PhoneGap) で始める、スマホアプリ開発Cordova (PhoneGap) で始める、スマホアプリ開発
Cordova (PhoneGap) で始める、スマホアプリ開発
 
PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化PhoneGapでWebアプリをスマホアプリ化
PhoneGapでWebアプリをスマホアプリ化
 
Monaca事例から学ぶHTML5モバイルアプリの活用ポイント
Monaca事例から学ぶHTML5モバイルアプリの活用ポイントMonaca事例から学ぶHTML5モバイルアプリの活用ポイント
Monaca事例から学ぶHTML5モバイルアプリの活用ポイント
 
DevOps 概要 - インフラ革命、今起きていること
DevOps 概要 - インフラ革命、今起きていることDevOps 概要 - インフラ革命、今起きていること
DevOps 概要 - インフラ革命、今起きていること
 
クリスマス直前! HTML5 で作る♥ はじめての iOS & Android アプリ開発
クリスマス直前!HTML5 で作る♥はじめての iOS & Android アプリ開発クリスマス直前!HTML5 で作る♥はじめての iOS & Android アプリ開発
クリスマス直前! HTML5 で作る♥ はじめての iOS & Android アプリ開発
 
Web標準技術で iOS、Android両対応アプリを開発
Web標準技術でiOS、Android両対応アプリを開発Web標準技術でiOS、Android両対応アプリを開発
Web標準技術で iOS、Android両対応アプリを開発
 
Monacaでつくるハイブリッドアプリ
MonacaでつくるハイブリッドアプリMonacaでつくるハイブリッドアプリ
Monacaでつくるハイブリッドアプリ
 
20120413 nestakabaneworkshop
20120413 nestakabaneworkshop20120413 nestakabaneworkshop
20120413 nestakabaneworkshop
 
Global engineerlab kawani
Global engineerlab kawaniGlobal engineerlab kawani
Global engineerlab kawani
 
2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordova2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordova
 
エンタープライズにおけるiOSアプリ開発で押さえておくべき7つのこと
エンタープライズにおけるiOSアプリ開発で押さえておくべき7つのことエンタープライズにおけるiOSアプリ開発で押さえておくべき7つのこと
エンタープライズにおけるiOSアプリ開発で押さえておくべき7つのこと
 
企画者が押さえておきたいHtml5アプリ開発の要点
企画者が押さえておきたいHtml5アプリ開発の要点企画者が押さえておきたいHtml5アプリ開発の要点
企画者が押さえておきたいHtml5アプリ開発の要点
 
PhoneGap勉強会 in 熊本
PhoneGap勉強会 in 熊本PhoneGap勉強会 in 熊本
PhoneGap勉強会 in 熊本
 

More from アシアル株式会社

Monacaによるモバイルアプリ開発ことはじめ
Monacaによるモバイルアプリ開発ことはじめMonacaによるモバイルアプリ開発ことはじめ
Monacaによるモバイルアプリ開発ことはじめアシアル株式会社
 
kintone 連携スマホアプリの開発・配布体験
kintone 連携スマホアプリの開発・配布体験kintone 連携スマホアプリの開発・配布体験
kintone 連携スマホアプリの開発・配布体験アシアル株式会社
 
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)アシアル株式会社
 
書籍『Monacaで学ぶはじめてのプログラミング』発展資料(試験問題アプリ編)
書籍『Monacaで学ぶはじめてのプログラミング』発展資料(試験問題アプリ編)書籍『Monacaで学ぶはじめてのプログラミング』発展資料(試験問題アプリ編)
書籍『Monacaで学ぶはじめてのプログラミング』発展資料(試験問題アプリ編)アシアル株式会社
 
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド第2弾(体験版)
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド第2弾(体験版)書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド第2弾(体験版)
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド第2弾(体験版)アシアル株式会社
 
Onsen UI 2 開発における JS フレームワーク衝突事例集
Onsen UI 2 開発における JS フレームワーク衝突事例集Onsen UI 2 開発における JS フレームワーク衝突事例集
Onsen UI 2 開発における JS フレームワーク衝突事例集アシアル株式会社
 
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド(体験版)
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド(体験版)書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド(体験版)
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド(体験版)アシアル株式会社
 
Onsen UI の最近とこれから 〜 国内サポートはじめました
Onsen UI の最近とこれから 〜 国内サポートはじめましたOnsen UI の最近とこれから 〜 国内サポートはじめました
Onsen UI の最近とこれから 〜 国内サポートはじめましたアシアル株式会社
 
最新UIフレームワーク Onsen UI2で カッコイイWordPress連携アプリを作る方法
最新UIフレームワーク Onsen UI2でカッコイイWordPress連携アプリを作る方法最新UIフレームワーク Onsen UI2でカッコイイWordPress連携アプリを作る方法
最新UIフレームワーク Onsen UI2で カッコイイWordPress連携アプリを作る方法アシアル株式会社
 
モバイル用Webフレームワーク最前線
モバイル用Webフレームワーク最前線モバイル用Webフレームワーク最前線
モバイル用Webフレームワーク最前線アシアル株式会社
 
Monacaソリューションセミナー20160621
Monacaソリューションセミナー20160621Monacaソリューションセミナー20160621
Monacaソリューションセミナー20160621アシアル株式会社
 
創業明治33年の衣料卸問屋がﰀ アプリで挑むコミュニケーション変革 ﰀ ~MonacaとmBaaSを活用したﰀ ビジネスチャットアプリの紹介〜 ﰀ
創業明治33年の衣料卸問屋がﰀ アプリで挑むコミュニケーション変革 ﰀ ~MonacaとmBaaSを活用したﰀ ビジネスチャットアプリの紹介〜 ﰀ創業明治33年の衣料卸問屋がﰀ アプリで挑むコミュニケーション変革 ﰀ ~MonacaとmBaaSを活用したﰀ ビジネスチャットアプリの紹介〜 ﰀ
創業明治33年の衣料卸問屋がﰀ アプリで挑むコミュニケーション変革 ﰀ ~MonacaとmBaaSを活用したﰀ ビジネスチャットアプリの紹介〜 ﰀアシアル株式会社
 
HTML5ハイブリッドアプリ開発 で拓くビジネスチャンス
HTML5ハイブリッドアプリ開発で拓くビジネスチャンスHTML5ハイブリッドアプリ開発で拓くビジネスチャンス
HTML5ハイブリッドアプリ開発 で拓くビジネスチャンス アシアル株式会社
 
HTML5ハイブリッドアプリ の活用ポイント
HTML5ハイブリッドアプリの活用ポイント HTML5ハイブリッドアプリの活用ポイント
HTML5ハイブリッドアプリ の活用ポイント アシアル株式会社
 

More from アシアル株式会社 (20)

MonacaとEducation活動の紹介
MonacaとEducation活動の紹介MonacaとEducation活動の紹介
MonacaとEducation活動の紹介
 
PWA 4 Business
PWA 4 BusinessPWA 4 Business
PWA 4 Business
 
Monacaによるモバイルアプリ開発ことはじめ
Monacaによるモバイルアプリ開発ことはじめMonacaによるモバイルアプリ開発ことはじめ
Monacaによるモバイルアプリ開発ことはじめ
 
kintone 連携スマホアプリの開発・配布体験
kintone 連携スマホアプリの開発・配布体験kintone 連携スマホアプリの開発・配布体験
kintone 連携スマホアプリの開発・配布体験
 
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)
 
書籍『Monacaで学ぶはじめてのプログラミング』発展資料(試験問題アプリ編)
書籍『Monacaで学ぶはじめてのプログラミング』発展資料(試験問題アプリ編)書籍『Monacaで学ぶはじめてのプログラミング』発展資料(試験問題アプリ編)
書籍『Monacaで学ぶはじめてのプログラミング』発展資料(試験問題アプリ編)
 
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド第2弾(体験版)
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド第2弾(体験版)書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド第2弾(体験版)
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド第2弾(体験版)
 
Onsen UI 2 開発における JS フレームワーク衝突事例集
Onsen UI 2 開発における JS フレームワーク衝突事例集Onsen UI 2 開発における JS フレームワーク衝突事例集
Onsen UI 2 開発における JS フレームワーク衝突事例集
 
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド(体験版)
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド(体験版)書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド(体験版)
書籍『Monacaで学ぶはじめてのプログラミング』 講義スライド(体験版)
 
Onsen UI の最近とこれから 〜 国内サポートはじめました
Onsen UI の最近とこれから 〜 国内サポートはじめましたOnsen UI の最近とこれから 〜 国内サポートはじめました
Onsen UI の最近とこれから 〜 国内サポートはじめました
 
最新UIフレームワーク Onsen UI2で カッコイイWordPress連携アプリを作る方法
最新UIフレームワーク Onsen UI2でカッコイイWordPress連携アプリを作る方法最新UIフレームワーク Onsen UI2でカッコイイWordPress連携アプリを作る方法
最新UIフレームワーク Onsen UI2で カッコイイWordPress連携アプリを作る方法
 
Gartner summit 2016
Gartner summit 2016Gartner summit 2016
Gartner summit 2016
 
モバイル用Webフレームワーク最前線
モバイル用Webフレームワーク最前線モバイル用Webフレームワーク最前線
モバイル用Webフレームワーク最前線
 
Monacaソリューションセミナー20160621
Monacaソリューションセミナー20160621Monacaソリューションセミナー20160621
Monacaソリューションセミナー20160621
 
20160308seminar2
20160308seminar220160308seminar2
20160308seminar2
 
Nifty cloud mbaas
Nifty cloud mbaasNifty cloud mbaas
Nifty cloud mbaas
 
創業明治33年の衣料卸問屋がﰀ アプリで挑むコミュニケーション変革 ﰀ ~MonacaとmBaaSを活用したﰀ ビジネスチャットアプリの紹介〜 ﰀ
創業明治33年の衣料卸問屋がﰀ アプリで挑むコミュニケーション変革 ﰀ ~MonacaとmBaaSを活用したﰀ ビジネスチャットアプリの紹介〜 ﰀ創業明治33年の衣料卸問屋がﰀ アプリで挑むコミュニケーション変革 ﰀ ~MonacaとmBaaSを活用したﰀ ビジネスチャットアプリの紹介〜 ﰀ
創業明治33年の衣料卸問屋がﰀ アプリで挑むコミュニケーション変革 ﰀ ~MonacaとmBaaSを活用したﰀ ビジネスチャットアプリの紹介〜 ﰀ
 
HTML5ハイブリッドアプリ開発 で拓くビジネスチャンス
HTML5ハイブリッドアプリ開発で拓くビジネスチャンスHTML5ハイブリッドアプリ開発で拓くビジネスチャンス
HTML5ハイブリッドアプリ開発 で拓くビジネスチャンス
 
HTML5ハイブリッドアプリ の活用ポイント
HTML5ハイブリッドアプリの活用ポイント HTML5ハイブリッドアプリの活用ポイント
HTML5ハイブリッドアプリ の活用ポイント
 
Onsen UI 2.0とUIライブラリの未来
Onsen UI 2.0とUIライブラリの未来Onsen UI 2.0とUIライブラリの未来
Onsen UI 2.0とUIライブラリの未来
 

Cordovaの特徴と開発手法概要

  • 1. Bringing More People To Apps Cordovaの特徴と 開発手法概要 アシアル株式会社 生形 可奈子 1
  • 2. Bringing More People To Apps 生形可奈子(うぶかたかなこ) アシアル株式会社 Monacaエバンジェリスト 2 Cordova の章
  • 3. Bringing More People To Apps Cordovaとは? 3
  • 4. Bringing More People To Apps HTML5アプリ用フレームワーク Cordova Apacheソフトウェア財団 PhoneGap アドビシステムズ 4
  • 5. Bringing More People To Apps Cordova?PhoneGap?  2008年、Nitobi社がPhoneGapを開発。  2011年、Adobe社がNitobi社を買収。 PhoneGapはApache財団に寄贈され、名称を「Cordova」に変更。 同時に「PhoneGap」はAdobeの登録商標に。 5
  • 6. Bringing More People To Apps Cordovaコミッターの会合@マイクロソフト 6
  • 7. Bringing More People To Apps Web標準技術(HTML/CSS/JavaScript) でアプリ開発  WebView上にHTMLをロードしてUIを作成するので、Web開 発と同じ方法でモバイルアプリ開発が可能 7
  • 8. Bringing More People To Apps Cordovaの仕組み 8 Cordova層 HTML5層 (WebView) アプリ本体はHTML5で実装 CordovaがOSに合わせた ネイティブコードを提供 OS 1. JavaScriptでAPI実行 2. Cordovaがネイティブ 機能を実行
  • 9. Bringing More People To Apps プラグインでネイティブ機能を拡張  ネイティブの各種機能は、プラグイン形式で実装されている  標準プラグインの他にも、第三者によって提供されたプラグインを 取り込んで機能を拡張できる 9 標準プラグイン ・カメラ ・位置情報 ・電話帳 ・加速度センサー ・ファイルアクセス サードパーティ製 プラグイン ・Bluetooth ・プッシュ通知 ・アプリ内課金 ・バーコード読取 ・IoT 自作プラグイン
  • 10. Bringing More People To Apps 事例:タニタヘルスプラネット ▶ 体組成計連携の健康管理アプリを2ヶ月で開発 ▶ Bluetooth、NFCを使って専用の体組成計、歩数計からデータを自 動で受け取ることが可能 10
  • 11. Bringing More People To Apps CordovaはCross PlatformツールNo.1 11 61% 35% 31% 18% 15% 13% 12% 9% 4% 3% 0% 10% 20% 30% 40% 50% 60% 70% PhoneGap/Cordova Xamarin Unity Qt Adobe Air Appcelerator Corona Marmelade Codename One Live Code Using this tool Vision Mobile Analysis of Cross-Platform Development, July 2015
  • 12. Bringing More People To Apps 様々なソリューションがCordovaを採用 12
  • 13. Bringing More People To Apps Cordovaの課題? 13
  • 14. Bringing More People To Apps Cordovaの課題としてしばしば挙げられ るもの 1. パフォーマンス 2. 脆弱性対策 14
  • 15. Bringing More People To Apps 端末の大幅な進化 初代Xperia Xperia Z 5 発売日: 2010年4月 Android 1.6 (後に2.1) 1GHz シングルコアCPU 384MBメモリー ベンチマークスコア: 3361 発売日: 2016年6月 Android 6.0 2GHz クワッド(8)コアCPU 3GBメモリー ベンチマークスコア: 52084 5年間で20倍もの スピードアップ 15
  • 16. Bringing More People To Apps HTML5アプリ向けUIフレームワークの登 場 16
  • 17. Bringing More People To Apps Onsen UI  ハイパフォーマンスなUIを実現  プラットフォームを判別して自動でスタイルが変化 17
  • 18. Bringing More People To Apps 豊富なUIパーツを利用可能 18
  • 19. Bringing More People To Apps 使い方は独自タグを記述するだけの簡単設 計 <ons-toolbar></ons-toolbar> <ons-list-item></ons-list-item> <ons-tabbar></ons-tabbar> 19
  • 20. Bringing More People To Apps 様々なJSフレームワークとの組み合わせ が可能 20
  • 21. Bringing More People To Apps 事例:ジャパンネット銀行 残高確認アプリ ▶Onsen UIでネイティブと遜色ないUIを実現 21
  • 22. Bringing More People To Apps Cordovaの脆弱性に関する問題 22
  • 23. Bringing More People To Apps Cordovaアプリにおける脆弱性の種類 23 1. Cordovaに依存する脆弱性 ▶ 最新バージョンのCordovaを利用する 2. アプリの実装に依存する脆弱性 ▶ Webアプリと同様にXSS対策などが必要 3. WebViewに依存する脆弱性 ▶ Android5.0以降はGoogle Playから随時アップデートされる
  • 24. Bringing More People To Apps 古いWebViewが抱える問題  Android4.4まではWebViewがOSに付属するため、アップデートは メーカーから提供される(脆弱性放置の危険性)  GoogleがAndroid4.3以前のWebViewに対するセキュリティパッ チの提供を終了した 24
  • 25. Bringing More People To Apps Crosswalk使用通常のCordovaアプリ Androidアプリ  ChromiumベースのWebView  アプリ内に埋め込んで配布することが可能 Androidアプリ 端末の WebView Intel Crosswalk 25
  • 26. Bringing More People To Apps Cordova開発におけるポイントまとめ  Webの技術でクロスプラットフォーム開発  Web技術者のスキルを活用  既存システムの流用が可能  Web技術でもネイティブ機能が利用可  パフォーマンスやセキュリティ対策ツールも完備  UIフレームワークやCrosswalkの導入はほぼ必須 26
  • 27. Bringing More People To Apps Monacaもよろしくお願いします!  15万人が利用するCordova開発環境(IDE)  実機によるリアルタイム検証が可能  WindowsマシンでもiOSアプリ開発OK https://ja.monaca.io/ 27