SlideShare une entreprise Scribd logo
1  sur  57
Télécharger pour lire hors ligne
Web on Kernel
for HTML5-NADO @ 201204
by Tomoya ASAI (dynamis)




            last update on 2012.04.12
about:me

            http:// dynamis.jp


              @dynamitter

           facebook.com/      dynamis
           mailto: Tomoya ASAI <dynamis@mozilla-japan.org>
きょうのおはなし
      ばずわーど
      さいしんのぎじゅつ
      うぇぶですまほ
      あぷりをくばろう
Agenda
         HTML5
         WebAPI
         Boot to Gecko
         Marketplace
"HTML5"
Review the Buzzword...
""HHTTMMLL55""  ってなぁに?



           フォクすけに教えて!
The term "HTML5" is widely
used as a buzzword to refer to
 modern Web technologies...


             HTML 仕様書に書いてるよ!
     http://whatwg.org/html - Introduction
"HTML5" という用語は最新
Web 技術を指すバズワード
 として広く使われています

          HTML 仕様書に書いてるよ!
  http://whatwg.org/html - Introduction
"HTML5" という用語は最新
Web 技術を指すバズワード
 として広く使われています


     最新技術って何処までかな?
Semantic    Multimedia     HTML5
                                       CSS    Geolocation
Elements    Elements       Forms



Offline         User        HTML5
                                      DOM      MathML
Support     Interaction    Parser



                            Web
Canvas      Microdata                 SVG        XHR
                          Messaging



 Web          Web
                          WebRTC      WebGL   ECMA5th
Workers      Sockets

          (主な)仕様策定の場:     WHATWG      W3C        Other
HTML Living Standard - WHATWG




                                     W3C 仕様書名に "HTML" を含む
Semantic   Multimedia     HTML5




                                       HTML5 - W3C
                                                            CSS
Elements   Elements       Forms



Offline        User        HTML5
                                                            DOM
Support    Interaction    Parser



                           Web
Canvas     Microdata                                        SVG
                         Messaging



 Web         Web
                          more...
Workers     Sockets                          WebRTC           WebGL
今の  ""HHTTMMLL55""  は?



           フォクすけに教えて!
Semantic Elements      CSS Transforms             ECMA5th

Multimedia Elements    CSS Animations           WebM Codec

  Canvas 2D API              SVG                   WebGL

      Forms           WOFF (Web Fonts)             WebCL

  Offline Events       Event Listener (DOM)       Typed Array

 Drag & Drop API         XHR Level 2           Audio Data API

   Web Storage            Indexed DB         SQL DB (obsolate)

  HTML5 Parser              File API              River Trail

   Web Workers            Geolocation               SPDY

    Microdata         Device Orientation     ContentSecurityPolicy

 Web Sockets API       Server-Sent Events    Web Socket Protocol

    Web RTC              Battery Status       ICC Color Profile
Semantic Elements      CSS Transforms             ECMA5th

Multimedia Elements    CSS Animations           WebM Codec

  Canvas 2D API              SVG                   WebGL

      Forms           WOFF (Web Fonts)             WebCL

  Offline Events       Event Listener (DOM)       Typed Array



   W3C HTML5
 Drag & Drop API         XHR Level 2           Audio Data API

   Web Storage            Indexed DB         SQL DB (obsolate)

  HTML5 Parser              File API              River Trail

   Web Workers            Geolocation               SPDY

    Microdata         Device Orientation     ContentSecurityPolicy

 Web Sockets API       Server-Sent Events    Web Socket Protocol

    Web RTC              Battery Status       ICC Color Profile
Semantic Elements      CSS Transforms             ECMA5th

Multimedia Elements    CSS Animations           WebM Codec

  Canvas 2D API              SVG                   WebGL

      Forms           WOFF (Web Fonts)             WebCL

  Offline Events       Event Listener (DOM)       Typed Array



WHATWG HTML
 Drag & Drop API         XHR Level 2           Audio Data API

   Web Storage            Indexed DB         SQL DB (obsolate)

  HTML5 Parser              File API              River Trail

   Web Workers            Geolocation               SPDY

    Microdata         Device Orientation     ContentSecurityPolicy

 Web Sockets API       Server-Sent Events    Web Socket Protocol

    Web RTC              Battery Status       ICC Color Profile
Semantic Elements      CSS Transforms             ECMA5th

Multimedia Elements    CSS Animations           WebM Codec

  Canvas 2D API              SVG                   WebGL

      Forms           WOFF (Web Fonts)             WebCL

  Offline Events       Event Listener (DOM)       Typed Array



                  Firefox
 Drag & Drop API         XHR Level 2           Audio Data API

   Web Storage            Indexed DB         SQL DB (obsolate)

  HTML5 Parser              File API              River Trail

   Web Workers            Geolocation               SPDY

    Microdata         Device Orientation     ContentSecurityPolicy

 Web Sockets API       Server-Sent Events    Web Socket Protocol

    Web RTC                    点線は標準非搭載や限定的実装
                         Battery Status ICC Color Profile
"HTML5" の現状
       "HTML5" >> HTML > HTML5
         実装や仕様策定に伴い "HTML5"
         の領域は広がり続けている

       Web がプラットフォームに
         本格的アプリ開発が可能に
これで十分なの?



    フォクすけに教えて!
"HTML5" ではまだできない
      システムステータス
       電源, WiFi 情報, モバイル通信...
      各種センサー
       光センサー, 近接センサー...

      低レベルハードウェア制御
       USB, BlueTooth, NFC
ボクもいろいろ
使ってみた〜い!
やりましょう。

   あの人の写真は無断で
   使わないでおきます…
Web API
No More Native Apps...
http://arewemobileyet.com/
Web API
          Web の限界を押し進める
           HTML5 などの基本 API 以外
           API の総称であって定義はない

          W3C では DAP などで標準化
           実装と共に標準化も進めていく
           一部別の WG に分かれるかも?


                    https://wiki.mozilla.org/WebAPI
昔からある Web API
      Geolocation (位置情報)
      Orientation (加速度センサー)
      Audio Data API
      WebGL (3D グラフィック)
      Camera API (WebRTC へ統合)


             これらは既に Android 版 Firefox で実装済み
実装済みの Web API
      モバイル端末の基本機能中心
       SMS, Telephony
       Settings, Contacts
       Vibration, Pointer Lock
       Battery Status (電池や充電)
       Resource Lock (スリープ禁止)
       Network Information
                 実装がまだ一部不完全な API も含む
現在実装中の Web API
      WebRTC (Camera, P2P など含む)
      Open Web Apps (アプリ管理)
      Idel, Power Management
      Mobile Connection,
      WiFi Information (無線情報)
      Light Sensor (環境光センサー),
      Proximity Sensor (近接センサー)
      ...and more...
ex. 環境光を確認してみる
var	 count	 =	 0;
function	 output(ambient)	 {
	 	 //	 ambient.value	 属性で	 lux	 単位の光強度が得られる
	 	 var	 d	 =	 document.getElementById("d");
	 	 d.innerHTML	 =	 "<p>	 計測回数:	 "	 +	 count++
	 	 	 	 	 	 	 	 	 	 	 	 	 +	 	 "<p>	 現在値:	 "	 +	 ambient.value
}

//	 devicelight	 イベントにリスナを追加する
window.addEventListener("devicelight",	 output,	 true);

//	 Firefox	 14	 か	 15	 から利用可能になる見込み
実装予定の Web API
      Device Storage
         USB file-reading も
      低レベルハードウェア
         Bluetooth, USB, NFC
         WebSocket 的になりそう

      ...and more...

            ネイティブアプリにできることは何でも可能に
検討中の WebAPI
      Socket API (低レベル TCP)
      Time/Clock (時刻設定)
      Alarm
      Calendar
      Spellcheck
      ...and more...
もちろん API は標準化
      W3C DAP (Device API) WG
        ハードウェア操作やセンサー系
      IETF/W3C WebRTC WG
        マルチメディア系や P2P など

      Notification なども個別 WG
      また別の WG 増えるかも?
        NFC, USB など低レベル系
the Web is the Platform
          Web こそがプラットフォーム
           端末、OS、ブラウザに閉じない
           Write Once Run Anywhere?
これだけあれば…�


    もちろん***ができる
Boot to Gecko
Web Platform OS...
ステータスバーも
(電波強度、電池残量...)

電話や SMS の送受信も

もちろん Firefox も

カメラを使うのも

写真やビデオを見るのも

その他いろんなアプリも

マーケットプレイスも
ステータスバーも
      (電波強度、電池残量...)

      電話や SMS の送受信も

      もちろん Firefox も

      カメラを使うのも

      写真やビデオを見るのも

      その他いろんなアプリも

      マーケットプレイスも


すべて Web 技術で!
Boot to Gecko
          Gecko を起動する OS
             Linux Kernel 上に Gecko を
             Java VM などの中間レイヤなし

          Web 技術が「ネイティブ」に
             HTML5, JavaScript, Web API...




         Gecko は Firefox の描画エンジン、WebRT = Web Runtime
Boot to Gecko の3要素
       Gaia
         ユーザインターフェイス
       Gecko
         アプリケーションランタイム

       Gonk
         低レベルの OS 層
         シンプルなカスタム Linux
Status
         2012/03/09 - M2.1
           Dogfood Release
         2012/03/26 M2.5
           Developer Preview Phone
           JSConf にて開発端末配布
Roadmap
           2012/06/01 - M3
             functional/Gecko complete
           2012/06/29 - M4
             feature/Gaia complete and
             code freeze
(これはダミー)   TBD - M4.5
             major bug fixing / UI freeze
開発パートナーと製品化
    Telefónica は本年中に製品化
      世界 3∼4 位のキャリア
      ホーム画面やアプリはカスタム

    Deutsche Telekom (T-Mobile)
      Innovation Labs が開発に参加

    Adobe, Qualcomm らも協力
      PhoneGap の B2G 対応など
Mozilla Marketplace
the Web is the Platform
既存のプラットフォーム




 現在のアプリケーションはそれぞれのプラットフォーム毎に作る必要がある
Web がプラットフォーム


                  プラットフォーム
                    としての Web



Web がプラットフォームになれば業界標準技術でどこでも動作するアプリ環境に
Mozilla Marketplace
                       デバイス・OS 横断マーケット
                           Web をアプリマーケットに
                           マーケットで Web を分断しない

                       Web アプリの事前登録受付中
                           今年中に正式リリースを予定




  http://hacks.mozilla.org/2012/02/mozillamarketplace-open-for-app-submissions/
Web アプリの登録
     0. アプリを作る
     1. AppManifest を書く
     2. Marketplace に登録
0. アプリを作る


 てきとーに作ってね。
1. AppManifest を書く
//	 最小限これくらいの	 JSON	 書くだけ。

{
	 	 "version":	 "0.1",
	 	 "name":	 "DNT	 Checker",
	 	 "description":	 "行動追跡を拒否しているか確認できます",
	 	 "developer":	 {
	 	 	 	 "name":	 "dynamis",
	 	 	 	 "url":	 "http://dynamis.jp"
	 	 }
}
2. Marketplace に登録
4/26 からユーザ向けの
  ベータを開始予定

        あくまでも予定。
      ずれても知りません。
続きは DevCon@Osaka で
http://mozilla.jp/devcon



            6/30 にまた大阪で!
続きは DevCon@Osaka で




http://mozilla.jp/devcon

Contenu connexe

En vedette (7)

Firefox OSがモテないのはどう考えてもお前らが悪い!
Firefox OSがモテないのはどう考えてもお前らが悪い!Firefox OSがモテないのはどう考えてもお前らが悪い!
Firefox OSがモテないのはどう考えてもお前らが悪い!
 
Fx osコードリーディングの紹介
Fx osコードリーディングの紹介Fx osコードリーディングの紹介
Fx osコードリーディングの紹介
 
Change by HTML5
Change by HTML5Change by HTML5
Change by HTML5
 
Firefox OS App Manager
Firefox OS App ManagerFirefox OS App Manager
Firefox OS App Manager
 
JägerMonkey
JägerMonkeyJägerMonkey
JägerMonkey
 
HTML & Browsers
HTML & BrowsersHTML & Browsers
HTML & Browsers
 
Web Technologies
Web TechnologiesWeb Technologies
Web Technologies
 

Similaire à Web on Kernel

マイクロソフトWeb開発の今と今後
マイクロソフトWeb開発の今と今後マイクロソフトWeb開発の今と今後
マイクロソフトWeb開発の今と今後
Akira Inoue
 
Firefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own PathFirefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own Path
dynamis
 

Similaire à Web on Kernel (20)

Kilimanjaro Event
Kilimanjaro EventKilimanjaro Event
Kilimanjaro Event
 
WebとIE10とWindows 8
WebとIE10とWindows 8WebとIE10とWindows 8
WebとIE10とWindows 8
 
IE10とWindows 8とHTML5
IE10とWindows 8とHTML5IE10とWindows 8とHTML5
IE10とWindows 8とHTML5
 
Concentrated HTML5 & Attractive HTML5
Concentrated HTML5 & Attractive HTML5Concentrated HTML5 & Attractive HTML5
Concentrated HTML5 & Attractive HTML5
 
HTML5 OS
HTML5 OSHTML5 OS
HTML5 OS
 
[Mobile5] 最新動向 2012年5月
[Mobile5] 最新動向 2012年5月[Mobile5] 最新動向 2012年5月
[Mobile5] 最新動向 2012年5月
 
Mvc conf session_3_takehara
Mvc conf session_3_takeharaMvc conf session_3_takehara
Mvc conf session_3_takehara
 
HTML5開発最前線
HTML5開発最前線HTML5開発最前線
HTML5開発最前線
 
Firefox OS
Firefox OSFirefox OS
Firefox OS
 
OSC 2012 Microsoft Session [マイクロソフトの魅せるセンサー×クラウド技術]
OSC 2012 Microsoft Session [マイクロソフトの魅せるセンサー×クラウド技術]OSC 2012 Microsoft Session [マイクロソフトの魅せるセンサー×クラウド技術]
OSC 2012 Microsoft Session [マイクロソフトの魅せるセンサー×クラウド技術]
 
マイクロソフトにとってのWebって?
マイクロソフトにとってのWebって?マイクロソフトにとってのWebって?
マイクロソフトにとってのWebって?
 
マイクロソフトWeb開発の今と今後
マイクロソフトWeb開発の今と今後マイクロソフトWeb開発の今と今後
マイクロソフトWeb開発の今と今後
 
Data API + AWS = (CMS どうでしょう 札幌編)
Data API + AWS =  (CMS どうでしょう 札幌編)Data API + AWS =  (CMS どうでしょう 札幌編)
Data API + AWS = (CMS どうでしょう 札幌編)
 
SilverlightとSharePoint2010の紹介
SilverlightとSharePoint2010の紹介SilverlightとSharePoint2010の紹介
SilverlightとSharePoint2010の紹介
 
HTML2013 Web=OS
HTML2013 Web=OSHTML2013 Web=OS
HTML2013 Web=OS
 
Gamefest Japan 2010
Gamefest Japan 2010Gamefest Japan 2010
Gamefest Japan 2010
 
Firefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own PathFirefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own Path
 
HTML5最前線
HTML5最前線HTML5最前線
HTML5最前線
 
Mvc conf session_5_isami
Mvc conf session_5_isamiMvc conf session_5_isami
Mvc conf session_5_isami
 
JavaScript And Keywords
JavaScript And KeywordsJavaScript And Keywords
JavaScript And Keywords
 

Plus de dynamis

Plus de dynamis (20)

HTTP and 5G (fixed1)
HTTP and 5G (fixed1)HTTP and 5G (fixed1)
HTTP and 5G (fixed1)
 
HTTP and 5G
HTTP and 5GHTTP and 5G
HTTP and 5G
 
HTTP and 5G partial draft
HTTP and 5G partial draftHTTP and 5G partial draft
HTTP and 5G partial draft
 
Web App Platform Strategy
Web App Platform StrategyWeb App Platform Strategy
Web App Platform Strategy
 
HTML5 & Renesas RZ/G
HTML5 & Renesas RZ/GHTML5 & Renesas RZ/G
HTML5 & Renesas RZ/G
 
Life of html5 (osaka)
Life of html5 (osaka)Life of html5 (osaka)
Life of html5 (osaka)
 
Web updates 2017
Web updates 2017Web updates 2017
Web updates 2017
 
Life of HTML5
Life of HTML5Life of HTML5
Life of HTML5
 
Browsers in IoT Era
Browsers in IoT EraBrowsers in IoT Era
Browsers in IoT Era
 
New Norm of HTML5
New Norm of HTML5New Norm of HTML5
New Norm of HTML5
 
Edge Web Technologies and Browser Vendors (Updated on 2016/09/06)
Edge Web Technologies and Browser Vendors (Updated on 2016/09/06)Edge Web Technologies and Browser Vendors (Updated on 2016/09/06)
Edge Web Technologies and Browser Vendors (Updated on 2016/09/06)
 
OSC2016.Enterprise Lightnig Talk
OSC2016.Enterprise Lightnig TalkOSC2016.Enterprise Lightnig Talk
OSC2016.Enterprise Lightnig Talk
 
Demo for Gecko Embedded
Demo for Gecko EmbeddedDemo for Gecko Embedded
Demo for Gecko Embedded
 
Project Gecko Embedded
Project Gecko EmbeddedProject Gecko Embedded
Project Gecko Embedded
 
The New Norm of The Web
The New Norm of The WebThe New Norm of The Web
The New Norm of The Web
 
Progressive Mobile Web Apps
Progressive Mobile Web AppsProgressive Mobile Web Apps
Progressive Mobile Web Apps
 
Modern Mobile Web Apps
Modern Mobile Web AppsModern Mobile Web Apps
Modern Mobile Web Apps
 
Web Tech & Architecture
Web Tech & ArchitectureWeb Tech & Architecture
Web Tech & Architecture
 
Java script.trend(spec)
Java script.trend(spec)Java script.trend(spec)
Java script.trend(spec)
 
Data Privacy meeting
Data Privacy meetingData Privacy meeting
Data Privacy meeting
 

Dernier

Dernier (11)

LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 

Web on Kernel

  • 1. Web on Kernel for HTML5-NADO @ 201204 by Tomoya ASAI (dynamis) last update on 2012.04.12
  • 2. about:me http:// dynamis.jp @dynamitter facebook.com/ dynamis mailto: Tomoya ASAI <dynamis@mozilla-japan.org>
  • 3. きょうのおはなし ばずわーど さいしんのぎじゅつ うぇぶですまほ あぷりをくばろう
  • 4. Agenda HTML5 WebAPI Boot to Gecko Marketplace
  • 6. ""HHTTMMLL55"" ってなぁに? フォクすけに教えて!
  • 7. The term "HTML5" is widely used as a buzzword to refer to modern Web technologies... HTML 仕様書に書いてるよ! http://whatwg.org/html - Introduction
  • 8. "HTML5" という用語は最新 Web 技術を指すバズワード として広く使われています HTML 仕様書に書いてるよ! http://whatwg.org/html - Introduction
  • 9. "HTML5" という用語は最新 Web 技術を指すバズワード として広く使われています 最新技術って何処までかな?
  • 10. Semantic Multimedia HTML5 CSS Geolocation Elements Elements Forms Offline User HTML5 DOM MathML Support Interaction Parser Web Canvas Microdata SVG XHR Messaging Web Web WebRTC WebGL ECMA5th Workers Sockets (主な)仕様策定の場: WHATWG W3C Other
  • 11. HTML Living Standard - WHATWG W3C 仕様書名に "HTML" を含む Semantic Multimedia HTML5 HTML5 - W3C CSS Elements Elements Forms Offline User HTML5 DOM Support Interaction Parser Web Canvas Microdata SVG Messaging Web Web more... Workers Sockets WebRTC WebGL
  • 12. 今の ""HHTTMMLL55"" は? フォクすけに教えて!
  • 13. Semantic Elements CSS Transforms ECMA5th Multimedia Elements CSS Animations WebM Codec Canvas 2D API SVG WebGL Forms WOFF (Web Fonts) WebCL Offline Events Event Listener (DOM) Typed Array Drag & Drop API XHR Level 2 Audio Data API Web Storage Indexed DB SQL DB (obsolate) HTML5 Parser File API River Trail Web Workers Geolocation SPDY Microdata Device Orientation ContentSecurityPolicy Web Sockets API Server-Sent Events Web Socket Protocol Web RTC Battery Status ICC Color Profile
  • 14. Semantic Elements CSS Transforms ECMA5th Multimedia Elements CSS Animations WebM Codec Canvas 2D API SVG WebGL Forms WOFF (Web Fonts) WebCL Offline Events Event Listener (DOM) Typed Array W3C HTML5 Drag & Drop API XHR Level 2 Audio Data API Web Storage Indexed DB SQL DB (obsolate) HTML5 Parser File API River Trail Web Workers Geolocation SPDY Microdata Device Orientation ContentSecurityPolicy Web Sockets API Server-Sent Events Web Socket Protocol Web RTC Battery Status ICC Color Profile
  • 15. Semantic Elements CSS Transforms ECMA5th Multimedia Elements CSS Animations WebM Codec Canvas 2D API SVG WebGL Forms WOFF (Web Fonts) WebCL Offline Events Event Listener (DOM) Typed Array WHATWG HTML Drag & Drop API XHR Level 2 Audio Data API Web Storage Indexed DB SQL DB (obsolate) HTML5 Parser File API River Trail Web Workers Geolocation SPDY Microdata Device Orientation ContentSecurityPolicy Web Sockets API Server-Sent Events Web Socket Protocol Web RTC Battery Status ICC Color Profile
  • 16. Semantic Elements CSS Transforms ECMA5th Multimedia Elements CSS Animations WebM Codec Canvas 2D API SVG WebGL Forms WOFF (Web Fonts) WebCL Offline Events Event Listener (DOM) Typed Array Firefox Drag & Drop API XHR Level 2 Audio Data API Web Storage Indexed DB SQL DB (obsolate) HTML5 Parser File API River Trail Web Workers Geolocation SPDY Microdata Device Orientation ContentSecurityPolicy Web Sockets API Server-Sent Events Web Socket Protocol Web RTC 点線は標準非搭載や限定的実装 Battery Status ICC Color Profile
  • 17. "HTML5" の現状 "HTML5" >> HTML > HTML5 実装や仕様策定に伴い "HTML5" の領域は広がり続けている Web がプラットフォームに 本格的アプリ開発が可能に
  • 18. これで十分なの? フォクすけに教えて!
  • 19. "HTML5" ではまだできない システムステータス 電源, WiFi 情報, モバイル通信... 各種センサー 光センサー, 近接センサー... 低レベルハードウェア制御 USB, BlueTooth, NFC
  • 21. やりましょう。 あの人の写真は無断で 使わないでおきます…
  • 22. Web API No More Native Apps...
  • 24. Web API Web の限界を押し進める HTML5 などの基本 API 以外 API の総称であって定義はない W3C では DAP などで標準化 実装と共に標準化も進めていく 一部別の WG に分かれるかも? https://wiki.mozilla.org/WebAPI
  • 25. 昔からある Web API Geolocation (位置情報) Orientation (加速度センサー) Audio Data API WebGL (3D グラフィック) Camera API (WebRTC へ統合) これらは既に Android 版 Firefox で実装済み
  • 26. 実装済みの Web API モバイル端末の基本機能中心 SMS, Telephony Settings, Contacts Vibration, Pointer Lock Battery Status (電池や充電) Resource Lock (スリープ禁止) Network Information 実装がまだ一部不完全な API も含む
  • 27. 現在実装中の Web API WebRTC (Camera, P2P など含む) Open Web Apps (アプリ管理) Idel, Power Management Mobile Connection, WiFi Information (無線情報) Light Sensor (環境光センサー), Proximity Sensor (近接センサー) ...and more...
  • 28. ex. 環境光を確認してみる var count = 0; function output(ambient) { // ambient.value 属性で lux 単位の光強度が得られる var d = document.getElementById("d"); d.innerHTML = "<p> 計測回数: " + count++ + "<p> 現在値: " + ambient.value } // devicelight イベントにリスナを追加する window.addEventListener("devicelight", output, true); // Firefox 14 か 15 から利用可能になる見込み
  • 29. 実装予定の Web API Device Storage USB file-reading も 低レベルハードウェア Bluetooth, USB, NFC WebSocket 的になりそう ...and more... ネイティブアプリにできることは何でも可能に
  • 30. 検討中の WebAPI Socket API (低レベル TCP) Time/Clock (時刻設定) Alarm Calendar Spellcheck ...and more...
  • 31. もちろん API は標準化 W3C DAP (Device API) WG ハードウェア操作やセンサー系 IETF/W3C WebRTC WG マルチメディア系や P2P など Notification なども個別 WG また別の WG 増えるかも? NFC, USB など低レベル系
  • 32. the Web is the Platform Web こそがプラットフォーム 端末、OS、ブラウザに閉じない Write Once Run Anywhere?
  • 33. これだけあれば…� もちろん***ができる
  • 34. Boot to Gecko Web Platform OS...
  • 35.
  • 36.
  • 37. ステータスバーも (電波強度、電池残量...) 電話や SMS の送受信も もちろん Firefox も カメラを使うのも 写真やビデオを見るのも その他いろんなアプリも マーケットプレイスも
  • 38. ステータスバーも (電波強度、電池残量...) 電話や SMS の送受信も もちろん Firefox も カメラを使うのも 写真やビデオを見るのも その他いろんなアプリも マーケットプレイスも すべて Web 技術で!
  • 39. Boot to Gecko Gecko を起動する OS Linux Kernel 上に Gecko を Java VM などの中間レイヤなし Web 技術が「ネイティブ」に HTML5, JavaScript, Web API... Gecko は Firefox の描画エンジン、WebRT = Web Runtime
  • 40.
  • 41. Boot to Gecko の3要素 Gaia ユーザインターフェイス Gecko アプリケーションランタイム Gonk 低レベルの OS 層 シンプルなカスタム Linux
  • 42. Status 2012/03/09 - M2.1 Dogfood Release 2012/03/26 M2.5 Developer Preview Phone JSConf にて開発端末配布
  • 43. Roadmap 2012/06/01 - M3 functional/Gecko complete 2012/06/29 - M4 feature/Gaia complete and code freeze (これはダミー) TBD - M4.5 major bug fixing / UI freeze
  • 44. 開発パートナーと製品化 Telefónica は本年中に製品化 世界 3∼4 位のキャリア ホーム画面やアプリはカスタム Deutsche Telekom (T-Mobile) Innovation Labs が開発に参加 Adobe, Qualcomm らも協力 PhoneGap の B2G 対応など
  • 45. Mozilla Marketplace the Web is the Platform
  • 47. Web がプラットフォーム プラットフォーム としての Web Web がプラットフォームになれば業界標準技術でどこでも動作するアプリ環境に
  • 48. Mozilla Marketplace デバイス・OS 横断マーケット Web をアプリマーケットに マーケットで Web を分断しない Web アプリの事前登録受付中 今年中に正式リリースを予定 http://hacks.mozilla.org/2012/02/mozillamarketplace-open-for-app-submissions/
  • 49. Web アプリの登録 0. アプリを作る 1. AppManifest を書く 2. Marketplace に登録
  • 51. 1. AppManifest を書く // 最小限これくらいの JSON 書くだけ。 { "version": "0.1", "name": "DNT Checker", "description": "行動追跡を拒否しているか確認できます", "developer": { "name": "dynamis", "url": "http://dynamis.jp" } }
  • 53.
  • 54.
  • 55. 4/26 からユーザ向けの ベータを開始予定 あくまでも予定。 ずれても知りません。