37. Android に Web アプリ環境を
Web App = Native App に
ホームスクリーンへの追加
独立してフル画面起動
ネイティブ同様の利用体験
Firefox = WebRT for Android
ホームにインストール、アプリを起動した画面、マーケットをブラウズ
38. PC にも Web アプリ環境を
Web App = Native App に
プログラムフォルダ (アプリケー
ションディレクトリ) への追加
ウィンドウはもちろんプロセスも
データも全て独立
Firefox = WebRT for PC
39. Firefox Marketplace
Device, OS 横断マーケット
Web Platform のためのストア
Firefox OS はもちろん Android や
PC の Firefox もターゲット
課金 API については現時点では
Firefox OS 限定になっています
https://marketplace.firefox.com/
48. Firefox OS - Web is the Platform
Web = アプリ環境
アプリはすべて Web 技術で
ドメイン=アプリの単位と定義
Web を進化させる
不足機能は API を定義・標準化
セキュリティモデルやアプリ間連
携なども実装・標準化していく
49. Firefox OS : Tizen : Android
Native
Framework
カーネル & HAL
Web Platform
Web
Framework
App Framework
Android
Runtime
Dalvik
WebKit
Java
アプリ
ブラウザ
アプリ
Native
Library
Web
アプリ
WebKit
Web
アプリ
Native
アプリ
OSP
etc...
DeviceAPI
WebRT
Web
アプリ
Packaged
Webアプリ
コアサービスGecko
DeviceAPI SystemAPI
Web に最適化
シンプル&スマート
ライブラリ
SGL etc.
Native
Interface
カーネル & HAL カーネル & HAL
X.org etc.
左上のアプリが Web 読み込み型、右上のアプリがダウンロード型
51. 2つの方式のアプリ
Hosted (Web 読み込み型)
従来の OS ではブラウザ上で動作
動作や権限は従来の Web と同じ
オフライン対応アプリも開発可能
Packaged (ダウンロード型)
従来のスマホアプリに相当する
マーケット審査を経て追加権限取得
サイト全体を ZIP して配布する形式
Packaged
Web アプリ
Hosted
Web アプリ
Internet
Server
端末
詳細: https://developer.mozilla.org/ja/docs/Web/Apps/Packaged_apps
52. 方式 種類 概要
Hosted
(Web から
読み込む)
Web Content
Web サイトそのもの。
ブラウザ内でアクセスして使う。Hosted
(Web から
読み込む) Installed Web
Web サイトをインストールしたもの。
ブラウザの UI なしで単独起動する。
Packaged
(従来の OS 同
様端末にイン
ストールする)
Plain
Packaged
Web サイト全体を ZIP パッケージに
しているが追加権限を要求しないもの
Packaged
(従来の OS 同
様端末にイン
ストールする)
Privileged
マーケット審査を受けて追加の権限を
許可されたアプリ
Packaged
(従来の OS 同
様端末にイン
ストールする)
Certified
通信事業者や端末メーカーが特別に高
い権限を許可している組み込みアプリ
Firefox OS でのアプリの分類
53. 種類 利用可能な API 例
Web
Content
PC や Android 等のブラウザでできることそのまま
位置情報、画面方向、加速度・近接・環境光センサー、
電池情報、振動、データベース (IndexedDB) など
Installed
Web
OS に登録されることでアラーム、Push 通知、Web
Activities などの API が使えるようになる
Plain
Packaged
追加 API なし (Installed Web と同じ権限)
Privileged
アドレス帳、SD カードの読み書き、CORS に関わらず任
意ドメインへの XHR、TCP Socket
Certified
電話、SMS、ボイスメールなど料金の発生するサービス
その他 Bluetooth、Background Service など
アプリの分類と API 権限