SlideShare uma empresa Scribd logo
1 de 22
Baixar para ler offline
第 3 回 Tizen 勉強会




Firefox OS カスタム ROM の作成
          2012/08/25
自己紹介

   Twitter: @masap
   職業: 組み込みプログラマ(主に Wi-Fi)
   ハッシュタグ: #FirefoxOSjp
概要
Firefox OSとは

   Mozilla が作ったスマートフォンOS
   思想: アプリケーションは全て HTML5 になるべき
       iOS で購入したアプリは Android でも動くべき
   アプリケーション開発環境の比較
            Android   Tizen        Firefox OS
    開発言語    Java      JavaScript   JavaScript
    画面設計    XML       HTML5        HTML5
    ネイティブ   C++       EFL          なし
    OS      Linux     Linux        Linux
Firefox OSとは(続き)

   シェア
       通信キャリアは 7 社
           (米)Sprint、(独)Deutsche Telekom、(アラブ首長国連
            邦)Etisalat、(フィリピン)Smart、(伊)Telecom Italia、(スペイ
            ン)Telefonica、(ノルウェー)Telenor。
       端末メーカーは 2 社
           (中)TCL Communication Technology、(中)ZTE。
   投入時期
       2013年初頭に最初の端末をブラジルにて発売予定。
Firefox OS Phone の使用感

   操作性
        起動、停止が速い。 15 秒で起動。停止は 1 秒以内。
             例としてGalaxy S2 WiMAX は 30 秒で起動、 7 秒で停止。
        もたつきなくスルスル動く。
   UI
        Android よりも iPhone に似ている。
        物理ホームキーが必要。
Firefox OS の特徴

   プラットフォーム自体をHTML5でカスタマイズ可能
       アプリではなくプラットフォームをHTML5で書ける
           Tizen はプラットフォーム自体はネイティブ (EFL) で書かれて
            いる。
       これは Firefox OS 固有の特徴。今日はこの点を中心に
        説明。
カスタマイズ(入門編)
壁紙セレクタ

   壁紙セレクタに項目を追加してみる。
準備

   Galaxy S2 (SC-02C) を用意
             日本で入手できるモデルでWWモデルに最も近いらしい
   Android 4.0 以上を焼く ⇐鬼門!
             Firefox OS のスクリプトが認識できるFWであること
   Firefox OS をダウンロード/ビルド/焼く
       基本的に公式手順通り
        https://developer.mozilla.org/en-US/docs/Mozilla/Boot_to_Gecko/B2G_build_prerequisites

       フルビルドは Athlon X2 4400 で 2 – 3 時間
Firefox OSの構造

   3層構造

      Gaia    JavaScriptで書かれたUIレイヤ


     Gecko       レンダリングエンジン          ユーザ空間


               ハードウェア仮想化レイヤ

      Gonk

                   Linux カーネル        カーネル空間
修正箇所

   Settings画面はひとつの HTML でできている
       gaia/apps/settings/index.html
   壁紙設定画面はsection要素で定義
       <section role="document" id="wallpaper">
   画像ファイルの置き場所
       gaia/apps/system/resources/images/backgrounds/
        に 480x800 の pngを置く。
   最後にGaiaを焼く
       ./flash.sh gaia で約 30 秒。
修正前

   修正前のホーム
修正後

   修正後のホーム
カスタマイズ(初級編)
Wi-Fi 機能の追加

   WPS(Wi-Fi Protected Setup) を追加する。
   Wi-Fi Protected Setup とは
       「ボタンを押すだけでつながる」
       SSID や暗号キーの入力等 Wi-Fi 接続に必要な手間が
        省ける。
画面イメージ

   WPS 追加イメージ
wpa_supplicant

   Firefox OS は Wi-Fi 接続のためのネィティブアプ
    リとして wpa_supplicant を使用している。
   広く使われている
       スマートフォン: Android, Meego, Tizen。
       デスクトップ: Ubuntu, Fedora。
   コマンドで操作
       “SCAN” のような文字列でコマンドを実行。 Android,
        Firefox OS。
       D-Bus 経由での操作も可能。 Meego, Tizen。
WPS 移植概要

   下記作業が必要
              - WPS 向け UI を追加
       Gaia
              - Gecko の WPS API を呼ぶ

              - WPS 向け API を追加
      Gecko
              - WPS コマンド発行機能を追加

    wpa_supplicant WPS 機能は既存なので修正不要
JavaScript とネイティブアプリ

   そもそも JavaScript とネイティブアプリはどうやって
    通信するのか?
   js-ctypes を使用して JavaScript から共有ライブラ
    リを呼べる。
       let cutils = ctypes.open("libcutils.so");
       Android 等向けに開発した既存資産を有効活用でき
        る。
   Js-ctypes について詳しく知りたい方はこちら
       @makoto_kato さんのスライド
        http://www.slideshare.net/djraven/jsctypes-2464200
コミット

   せっかく作ったので本家にコミットしてみる。
       Gaia: GitHub から Pull Request。
            lint チェックに注意。
       Gecko: Bugzilla に報告。
            バグじゃないけどバグとして報告。
   master ブランチに merge されたのでぜひ使って
    みてください。
まとめ

   カスタマイズしやすい!
       Android 等では敷居が高かったカスタマイズだが、今後
        は Web デザイナの皆さんからの Pull Request にも期
        待。
       Gaia の Mozilla 内開発者は 18 人。意外に少ない。
       日本の携帯電話会社さんもぜひ!。

Mais conteúdo relacionado

Mais procurados

さわってみよう Firefox OS in 福岡
さわってみよう Firefox OS in 福岡さわってみよう Firefox OS in 福岡
さわってみよう Firefox OS in 福岡Honma Masashi
 
剣と魔法のログレス(PC版)の自慢と課題
剣と魔法のログレス(PC版)の自慢と課題剣と魔法のログレス(PC版)の自慢と課題
剣と魔法のログレス(PC版)の自慢と課題AimingStudy
 
Kilimanjaro Event
Kilimanjaro EventKilimanjaro Event
Kilimanjaro Eventdynamis
 
ベータフォーラムってこんなとこ
ベータフォーラムってこんなとこベータフォーラムってこんなとこ
ベータフォーラムってこんなとこHaruyuki Nakano
 
「WindowsデスクトップでWeb開発 改訂版」サンプル
「WindowsデスクトップでWeb開発 改訂版」サンプル「WindowsデスクトップでWeb開発 改訂版」サンプル
「WindowsデスクトップでWeb開発 改訂版」サンプルHiroyuki Ohnaka
 
2016年注目の.netテクノロジー
2016年注目の.netテクノロジー2016年注目の.netテクノロジー
2016年注目の.netテクノロジーMakoto Nishimura
 
Firefox FAQ
Firefox FAQFirefox FAQ
Firefox FAQdynamis
 
Peak+が出荷されなかった俺はしぶしぶZTE Openの注文を決意しました。
Peak+が出荷されなかった俺はしぶしぶZTE Openの注文を決意しました。Peak+が出荷されなかった俺はしぶしぶZTE Openの注文を決意しました。
Peak+が出荷されなかった俺はしぶしぶZTE Openの注文を決意しました。星影 月夜
 
新登場!Surface Laptop 4
新登場!Surface Laptop 4新登場!Surface Laptop 4
新登場!Surface Laptop 4Tomokazu Kizawa
 
Firefox と Mozilla のテクノロジー
Firefox と Mozilla のテクノロジーFirefox と Mozilla のテクノロジー
Firefox と Mozilla のテクノロジーdynamis
 
03.owncloudのエコシステム
03.owncloudのエコシステム03.owncloudのエコシステム
03.owncloudのエコシステムTetsurou Yano
 
V sphere 7 update 3 へのアップグレードについて
V sphere 7 update 3 へのアップグレードについてV sphere 7 update 3 へのアップグレードについて
V sphere 7 update 3 へのアップグレードについてSatoshi Imai
 
Word benchfukuoka
Word benchfukuokaWord benchfukuoka
Word benchfukuokaJunji Manno
 
ユーザ・デザイナーから見たPlone CMSのアピールポイント
ユーザ・デザイナーから見たPlone CMSのアピールポイントユーザ・デザイナーから見たPlone CMSのアピールポイント
ユーザ・デザイナーから見たPlone CMSのアピールポイントMasaki NIWA
 
Enterprise Redmine
Enterprise RedmineEnterprise Redmine
Enterprise RedmineDai FUJIHARA
 
IBM LinuxONE コミュニティクラウドで クラウド開発環境構築
IBM LinuxONE コミュニティクラウドでクラウド開発環境構築IBM LinuxONE コミュニティクラウドでクラウド開発環境構築
IBM LinuxONE コミュニティクラウドで クラウド開発環境構築K Kimura
 
IBM Notes/Domino 9.0.1 アプリケーション開発新機能
IBM Notes/Domino 9.0.1 アプリケーション開発新機能IBM Notes/Domino 9.0.1 アプリケーション開発新機能
IBM Notes/Domino 9.0.1 アプリケーション開発新機能Mitsuru Katoh
 
Windows 10 の あたらしい Web ブラウザー について
Windows 10 の あたらしい Web ブラウザー についてWindows 10 の あたらしい Web ブラウザー について
Windows 10 の あたらしい Web ブラウザー についてOsamu Monoe
 

Mais procurados (20)

さわってみよう Firefox OS in 福岡
さわってみよう Firefox OS in 福岡さわってみよう Firefox OS in 福岡
さわってみよう Firefox OS in 福岡
 
剣と魔法のログレス(PC版)の自慢と課題
剣と魔法のログレス(PC版)の自慢と課題剣と魔法のログレス(PC版)の自慢と課題
剣と魔法のログレス(PC版)の自慢と課題
 
Kilimanjaro Event
Kilimanjaro EventKilimanjaro Event
Kilimanjaro Event
 
ベータフォーラムってこんなとこ
ベータフォーラムってこんなとこベータフォーラムってこんなとこ
ベータフォーラムってこんなとこ
 
「WindowsデスクトップでWeb開発 改訂版」サンプル
「WindowsデスクトップでWeb開発 改訂版」サンプル「WindowsデスクトップでWeb開発 改訂版」サンプル
「WindowsデスクトップでWeb開発 改訂版」サンプル
 
2016年注目の.netテクノロジー
2016年注目の.netテクノロジー2016年注目の.netテクノロジー
2016年注目の.netテクノロジー
 
Firefox FAQ
Firefox FAQFirefox FAQ
Firefox FAQ
 
Peak+が出荷されなかった俺はしぶしぶZTE Openの注文を決意しました。
Peak+が出荷されなかった俺はしぶしぶZTE Openの注文を決意しました。Peak+が出荷されなかった俺はしぶしぶZTE Openの注文を決意しました。
Peak+が出荷されなかった俺はしぶしぶZTE Openの注文を決意しました。
 
新登場!Surface Laptop 4
新登場!Surface Laptop 4新登場!Surface Laptop 4
新登場!Surface Laptop 4
 
Firefox と Mozilla のテクノロジー
Firefox と Mozilla のテクノロジーFirefox と Mozilla のテクノロジー
Firefox と Mozilla のテクノロジー
 
03.owncloudのエコシステム
03.owncloudのエコシステム03.owncloudのエコシステム
03.owncloudのエコシステム
 
Introduction of Rhodes
Introduction of RhodesIntroduction of Rhodes
Introduction of Rhodes
 
自宅インフラの育て方 第2回
自宅インフラの育て方 第2回自宅インフラの育て方 第2回
自宅インフラの育て方 第2回
 
V sphere 7 update 3 へのアップグレードについて
V sphere 7 update 3 へのアップグレードについてV sphere 7 update 3 へのアップグレードについて
V sphere 7 update 3 へのアップグレードについて
 
Word benchfukuoka
Word benchfukuokaWord benchfukuoka
Word benchfukuoka
 
ユーザ・デザイナーから見たPlone CMSのアピールポイント
ユーザ・デザイナーから見たPlone CMSのアピールポイントユーザ・デザイナーから見たPlone CMSのアピールポイント
ユーザ・デザイナーから見たPlone CMSのアピールポイント
 
Enterprise Redmine
Enterprise RedmineEnterprise Redmine
Enterprise Redmine
 
IBM LinuxONE コミュニティクラウドで クラウド開発環境構築
IBM LinuxONE コミュニティクラウドでクラウド開発環境構築IBM LinuxONE コミュニティクラウドでクラウド開発環境構築
IBM LinuxONE コミュニティクラウドで クラウド開発環境構築
 
IBM Notes/Domino 9.0.1 アプリケーション開発新機能
IBM Notes/Domino 9.0.1 アプリケーション開発新機能IBM Notes/Domino 9.0.1 アプリケーション開発新機能
IBM Notes/Domino 9.0.1 アプリケーション開発新機能
 
Windows 10 の あたらしい Web ブラウザー について
Windows 10 の あたらしい Web ブラウザー についてWindows 10 の あたらしい Web ブラウザー について
Windows 10 の あたらしい Web ブラウザー について
 

Semelhante a Firefox OS カスタム ROM の作成

Firefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own PathFirefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own Pathdynamis
 
Try Firefox OS
Try Firefox OSTry Firefox OS
Try Firefox OSdynamis
 
Firefox mobile for android internals
Firefox mobile for android internalsFirefox mobile for android internals
Firefox mobile for android internalsMakoto Kato
 
Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)Monaca
 
デザイナー目線で Firefox OS を変えよう
デザイナー目線で Firefox OS を変えようデザイナー目線で Firefox OS を変えよう
デザイナー目線で Firefox OS を変えようHonma Masashi
 
Secret of Firefox
Secret of FirefoxSecret of Firefox
Secret of Firefoxdynamis
 
Introduction to web development 1
Introduction to web development 1Introduction to web development 1
Introduction to web development 1hideaki honda
 
NPAPIを使ったandroid標準ブラウザの拡張方法
NPAPIを使ったandroid標準ブラウザの拡張方法NPAPIを使ったandroid標準ブラウザの拡張方法
NPAPIを使ったandroid標準ブラウザの拡張方法Naruto TAKAHASHI
 
Windows8 最新技術動向
Windows8 最新技術動向Windows8 最新技術動向
Windows8 最新技術動向yaju88
 
Flameにfirefox os2.1を入れてみた+α
Flameにfirefox os2.1を入れてみた+αFlameにfirefox os2.1を入れてみた+α
Flameにfirefox os2.1を入れてみた+αNaoki Takahashi
 
Windows Phoneで始める拡張現実の世界
Windows Phoneで始める拡張現実の世界Windows Phoneで始める拡張現実の世界
Windows Phoneで始める拡張現実の世界Akira Hatsune
 
Web is the OS (Firefox OS)
Web is the OS (Firefox OS)Web is the OS (Firefox OS)
Web is the OS (Firefox OS)dynamis
 
ownCloud概要説明
ownCloud概要説明ownCloud概要説明
ownCloud概要説明Tetsurou Yano
 
Hardware control by .NET Core 3.1
Hardware control by .NET Core 3.1Hardware control by .NET Core 3.1
Hardware control by .NET Core 3.1Atomu Hidaka
 
Firefox OS の Wi-Fi 機能改善
Firefox OS の Wi-Fi 機能改善Firefox OS の Wi-Fi 機能改善
Firefox OS の Wi-Fi 機能改善Honma Masashi
 
Addon sdkはじめの一歩
Addon sdkはじめの一歩Addon sdkはじめの一歩
Addon sdkはじめの一歩EnsekiTT
 
Tizen web app について調べたよ
Tizen web app について調べたよTizen web app について調べたよ
Tizen web app について調べたよNaruto TAKAHASHI
 
Html5 seminar 1_pac
Html5 seminar 1_pacHtml5 seminar 1_pac
Html5 seminar 1_pac1PAC. INC.
 

Semelhante a Firefox OS カスタム ROM の作成 (20)

Firefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own PathFirefox OS - Blaze Your Own Path
Firefox OS - Blaze Your Own Path
 
Try Firefox OS
Try Firefox OSTry Firefox OS
Try Firefox OS
 
Firefox mobile for android internals
Firefox mobile for android internalsFirefox mobile for android internals
Firefox mobile for android internals
 
Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)
 
デザイナー目線で Firefox OS を変えよう
デザイナー目線で Firefox OS を変えようデザイナー目線で Firefox OS を変えよう
デザイナー目線で Firefox OS を変えよう
 
Secret of Firefox
Secret of FirefoxSecret of Firefox
Secret of Firefox
 
Introduction to web development 1
Introduction to web development 1Introduction to web development 1
Introduction to web development 1
 
Titanium実装最初の一歩.
Titanium実装最初の一歩. Titanium実装最初の一歩.
Titanium実装最初の一歩.
 
NPAPIを使ったandroid標準ブラウザの拡張方法
NPAPIを使ったandroid標準ブラウザの拡張方法NPAPIを使ったandroid標準ブラウザの拡張方法
NPAPIを使ったandroid標準ブラウザの拡張方法
 
Firefox Mobile
Firefox MobileFirefox Mobile
Firefox Mobile
 
Windows8 最新技術動向
Windows8 最新技術動向Windows8 最新技術動向
Windows8 最新技術動向
 
Flameにfirefox os2.1を入れてみた+α
Flameにfirefox os2.1を入れてみた+αFlameにfirefox os2.1を入れてみた+α
Flameにfirefox os2.1を入れてみた+α
 
Windows Phoneで始める拡張現実の世界
Windows Phoneで始める拡張現実の世界Windows Phoneで始める拡張現実の世界
Windows Phoneで始める拡張現実の世界
 
Web is the OS (Firefox OS)
Web is the OS (Firefox OS)Web is the OS (Firefox OS)
Web is the OS (Firefox OS)
 
ownCloud概要説明
ownCloud概要説明ownCloud概要説明
ownCloud概要説明
 
Hardware control by .NET Core 3.1
Hardware control by .NET Core 3.1Hardware control by .NET Core 3.1
Hardware control by .NET Core 3.1
 
Firefox OS の Wi-Fi 機能改善
Firefox OS の Wi-Fi 機能改善Firefox OS の Wi-Fi 機能改善
Firefox OS の Wi-Fi 機能改善
 
Addon sdkはじめの一歩
Addon sdkはじめの一歩Addon sdkはじめの一歩
Addon sdkはじめの一歩
 
Tizen web app について調べたよ
Tizen web app について調べたよTizen web app について調べたよ
Tizen web app について調べたよ
 
Html5 seminar 1_pac
Html5 seminar 1_pacHtml5 seminar 1_pac
Html5 seminar 1_pac
 

Mais de Honma Masashi

Fxos for Embedded Systems (English version)
Fxos for Embedded Systems (English version)Fxos for Embedded Systems (English version)
Fxos for Embedded Systems (English version)Honma Masashi
 
Firefox OS for Embedded System
Firefox OS for Embedded SystemFirefox OS for Embedded System
Firefox OS for Embedded SystemHonma Masashi
 
HTML5 によるロボット制御
HTML5 によるロボット制御HTML5 によるロボット制御
HTML5 によるロボット制御Honma Masashi
 
Photo hack day Japan 2014 プレゼン資料
Photo hack day Japan 2014 プレゼン資料Photo hack day Japan 2014 プレゼン資料
Photo hack day Japan 2014 プレゼン資料Honma Masashi
 
Firefox OS 日本語 IME 開発状況
Firefox OS 日本語 IME 開発状況Firefox OS 日本語 IME 開発状況
Firefox OS 日本語 IME 開発状況Honma Masashi
 
Firefox OS を使って HTML5 でハードウェアを動かしてみよう
Firefox OS を使って HTML5 でハードウェアを動かしてみようFirefox OS を使って HTML5 でハードウェアを動かしてみよう
Firefox OS を使って HTML5 でハードウェアを動かしてみようHonma Masashi
 
Designers hack 011 ウォシュレットのリモコンから UI を極力無くすには
Designers hack 011 ウォシュレットのリモコンから UI を極力無くすにはDesigners hack 011 ウォシュレットのリモコンから UI を極力無くすには
Designers hack 011 ウォシュレットのリモコンから UI を極力無くすにはHonma Masashi
 
次世代プラットフォームでのHTML5アプリ開発 Firefox OS/Ubuntu Touch
次世代プラットフォームでのHTML5アプリ開発 Firefox OS/Ubuntu Touch次世代プラットフォームでのHTML5アプリ開発 Firefox OS/Ubuntu Touch
次世代プラットフォームでのHTML5アプリ開発 Firefox OS/Ubuntu TouchHonma Masashi
 

Mais de Honma Masashi (9)

ROS.js の紹介
ROS.js の紹介ROS.js の紹介
ROS.js の紹介
 
Fxos for Embedded Systems (English version)
Fxos for Embedded Systems (English version)Fxos for Embedded Systems (English version)
Fxos for Embedded Systems (English version)
 
Firefox OS for Embedded System
Firefox OS for Embedded SystemFirefox OS for Embedded System
Firefox OS for Embedded System
 
HTML5 によるロボット制御
HTML5 によるロボット制御HTML5 によるロボット制御
HTML5 によるロボット制御
 
Photo hack day Japan 2014 プレゼン資料
Photo hack day Japan 2014 プレゼン資料Photo hack day Japan 2014 プレゼン資料
Photo hack day Japan 2014 プレゼン資料
 
Firefox OS 日本語 IME 開発状況
Firefox OS 日本語 IME 開発状況Firefox OS 日本語 IME 開発状況
Firefox OS 日本語 IME 開発状況
 
Firefox OS を使って HTML5 でハードウェアを動かしてみよう
Firefox OS を使って HTML5 でハードウェアを動かしてみようFirefox OS を使って HTML5 でハードウェアを動かしてみよう
Firefox OS を使って HTML5 でハードウェアを動かしてみよう
 
Designers hack 011 ウォシュレットのリモコンから UI を極力無くすには
Designers hack 011 ウォシュレットのリモコンから UI を極力無くすにはDesigners hack 011 ウォシュレットのリモコンから UI を極力無くすには
Designers hack 011 ウォシュレットのリモコンから UI を極力無くすには
 
次世代プラットフォームでのHTML5アプリ開発 Firefox OS/Ubuntu Touch
次世代プラットフォームでのHTML5アプリ開発 Firefox OS/Ubuntu Touch次世代プラットフォームでのHTML5アプリ開発 Firefox OS/Ubuntu Touch
次世代プラットフォームでのHTML5アプリ開発 Firefox OS/Ubuntu Touch
 

Último

自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 

Último (9)

自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 

Firefox OS カスタム ROM の作成

  • 1. 第 3 回 Tizen 勉強会 Firefox OS カスタム ROM の作成 2012/08/25
  • 2. 自己紹介  Twitter: @masap  職業: 組み込みプログラマ(主に Wi-Fi)  ハッシュタグ: #FirefoxOSjp
  • 4. Firefox OSとは  Mozilla が作ったスマートフォンOS  思想: アプリケーションは全て HTML5 になるべき  iOS で購入したアプリは Android でも動くべき  アプリケーション開発環境の比較 Android Tizen Firefox OS 開発言語 Java JavaScript JavaScript 画面設計 XML HTML5 HTML5 ネイティブ C++ EFL なし OS Linux Linux Linux
  • 5. Firefox OSとは(続き)  シェア  通信キャリアは 7 社  (米)Sprint、(独)Deutsche Telekom、(アラブ首長国連 邦)Etisalat、(フィリピン)Smart、(伊)Telecom Italia、(スペイ ン)Telefonica、(ノルウェー)Telenor。  端末メーカーは 2 社  (中)TCL Communication Technology、(中)ZTE。  投入時期  2013年初頭に最初の端末をブラジルにて発売予定。
  • 6. Firefox OS Phone の使用感  操作性  起動、停止が速い。 15 秒で起動。停止は 1 秒以内。  例としてGalaxy S2 WiMAX は 30 秒で起動、 7 秒で停止。  もたつきなくスルスル動く。  UI  Android よりも iPhone に似ている。  物理ホームキーが必要。
  • 7. Firefox OS の特徴  プラットフォーム自体をHTML5でカスタマイズ可能  アプリではなくプラットフォームをHTML5で書ける  Tizen はプラットフォーム自体はネイティブ (EFL) で書かれて いる。  これは Firefox OS 固有の特徴。今日はこの点を中心に 説明。
  • 9. 壁紙セレクタ  壁紙セレクタに項目を追加してみる。
  • 10. 準備  Galaxy S2 (SC-02C) を用意  日本で入手できるモデルでWWモデルに最も近いらしい  Android 4.0 以上を焼く ⇐鬼門!  Firefox OS のスクリプトが認識できるFWであること  Firefox OS をダウンロード/ビルド/焼く  基本的に公式手順通り https://developer.mozilla.org/en-US/docs/Mozilla/Boot_to_Gecko/B2G_build_prerequisites  フルビルドは Athlon X2 4400 で 2 – 3 時間
  • 11. Firefox OSの構造  3層構造 Gaia JavaScriptで書かれたUIレイヤ Gecko レンダリングエンジン ユーザ空間 ハードウェア仮想化レイヤ Gonk Linux カーネル カーネル空間
  • 12. 修正箇所  Settings画面はひとつの HTML でできている  gaia/apps/settings/index.html  壁紙設定画面はsection要素で定義  <section role="document" id="wallpaper">  画像ファイルの置き場所  gaia/apps/system/resources/images/backgrounds/ に 480x800 の pngを置く。  最後にGaiaを焼く  ./flash.sh gaia で約 30 秒。
  • 13. 修正前  修正前のホーム
  • 14. 修正後  修正後のホーム
  • 16. Wi-Fi 機能の追加  WPS(Wi-Fi Protected Setup) を追加する。  Wi-Fi Protected Setup とは  「ボタンを押すだけでつながる」  SSID や暗号キーの入力等 Wi-Fi 接続に必要な手間が 省ける。
  • 17. 画面イメージ  WPS 追加イメージ
  • 18. wpa_supplicant  Firefox OS は Wi-Fi 接続のためのネィティブアプ リとして wpa_supplicant を使用している。  広く使われている  スマートフォン: Android, Meego, Tizen。  デスクトップ: Ubuntu, Fedora。  コマンドで操作  “SCAN” のような文字列でコマンドを実行。 Android, Firefox OS。  D-Bus 経由での操作も可能。 Meego, Tizen。
  • 19. WPS 移植概要  下記作業が必要 - WPS 向け UI を追加 Gaia - Gecko の WPS API を呼ぶ - WPS 向け API を追加 Gecko - WPS コマンド発行機能を追加 wpa_supplicant WPS 機能は既存なので修正不要
  • 20. JavaScript とネイティブアプリ  そもそも JavaScript とネイティブアプリはどうやって 通信するのか?  js-ctypes を使用して JavaScript から共有ライブラ リを呼べる。  let cutils = ctypes.open("libcutils.so");  Android 等向けに開発した既存資産を有効活用でき る。  Js-ctypes について詳しく知りたい方はこちら  @makoto_kato さんのスライド http://www.slideshare.net/djraven/jsctypes-2464200
  • 21. コミット  せっかく作ったので本家にコミットしてみる。  Gaia: GitHub から Pull Request。  lint チェックに注意。  Gecko: Bugzilla に報告。  バグじゃないけどバグとして報告。  master ブランチに merge されたのでぜひ使って みてください。
  • 22. まとめ  カスタマイズしやすい!  Android 等では敷居が高かったカスタマイズだが、今後 は Web デザイナの皆さんからの Pull Request にも期 待。  Gaia の Mozilla 内開発者は 18 人。意外に少ない。  日本の携帯電話会社さんもぜひ!。