ROS Japan UG #34 LT大会 で飛び込みLTした資料です.
https://rosjp.connpass.com/event/161041/
ROS 2のDashing/Eloquentで QoS (Quality of Service) 周りのAPIがそれぞれ破壊的に更新されててツラかったので,そのTIPS・知見を共有させていただきました.
ROS Japan UG #34 LT大会 で飛び込みLTした資料です.
https://rosjp.connpass.com/event/161041/
ROS 2のDashing/Eloquentで QoS (Quality of Service) 周りのAPIがそれぞれ破壊的に更新されててツラかったので,そのTIPS・知見を共有させていただきました.
Mapbox/OpenStreetMap meetup #07での発表資料です。
箱根駅伝を3Dデジタル地図上で再現した「箱根駅伝 3D」、YouTube上のウクライナのライブカメラを3D地図にマッピングした「Ukraine Live Cams」の紹介です。
箱根駅伝 3D
https://nagix.github.io/hakone-ekiden/
Ukraine Live Cams
https://nagix.github.io/ukraine-livecams/
Mapbox/OpenStreetMap meetup #07での発表資料です。
箱根駅伝を3Dデジタル地図上で再現した「箱根駅伝 3D」、YouTube上のウクライナのライブカメラを3D地図にマッピングした「Ukraine Live Cams」の紹介です。
箱根駅伝 3D
https://nagix.github.io/hakone-ekiden/
Ukraine Live Cams
https://nagix.github.io/ukraine-livecams/
WinJS, Apache Cordova & NFC - HTML5 apps for Android and Windows PhoneAndreas Jakl
How to create cross-platform mobile apps with HTML5 that integrate directly into the platform.
By combining several enterprise-class frameworks and tools, you can create apps that run on all mobile devices, developed in a central repository and tool.
In this presentation, you will learn how to create HTML5 apps with the Visual Studio Multi-Device Hybrid Apps plug-in. Apache Cordova is directly integrated and resposible for creating native apps for the mobile platforms.
WinJS can be used as a major UI framework that is now open source and works accross all platforms and browsers.
To check how you can integrate apps deeper with the native platforms, you will also see how to install and use a custom plug-in that enables Near Field Communication (NFC) on both Android and Windows Phone.
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
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
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