SlideShare ist ein Scribd-Unternehmen logo
1 von 21
FireMobileSimulator について 2008/09/05 堀川隆弘 [email_address] http://d.hatena.ne.jp/thorikawa/
FireMobileSimulator って? ,[object Object],[object Object],[object Object],[object Object],[object Object]
携帯ブラウザ独自の振る舞い ,[object Object],[object Object],[object Object],[object Object],[object Object]
携帯ブラウザ独自の振る舞い ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
携帯ブラウザ独自の振る舞い ,[object Object],[object Object]
携帯ブラウザ独自の振る舞い ,[object Object],[object Object]
携帯ブラウザ独自の振る舞い ,[object Object],[object Object]
実装の仕組み(1)HTTPリクエスト ,[object Object],[object Object],[object Object]
実装の仕組み(1)HTTPリクエスト ,[object Object],[object Object]
実装の仕組み(1)HTTPリクエスト ,[object Object],[object Object],[object Object]
実装の仕組み(1)HTTPリクエスト function myHTTPListener(){}; myHTTPListener.prototype.observe = function(subject, topic, data){ if (topic == " http-on-modify-request ") { var httpChannel = subject.QueryInterface(Ci.nsIHttpChannel); httpChannel.setRequestHeader("hoge", "foo", false); }else if (topic == "app-startup") { Cc["@mozilla.org/observer-service;1"].getService(Ci.nsIObserverService). addObserver(this, "http-on-modify-request", false); } } } サンプルソース
実装の仕組み(2)絵文字表示 ,[object Object]
実装の仕組み(2)絵文字表示 ,[object Object],[object Object],[object Object]
実装の仕組み(2)絵文字表示 ,[object Object],[object Object],[object Object]
実装の仕組み(2)絵文字表示 ,[object Object],[object Object],[object Object],[object Object],[object Object]
実装の仕組み(2)絵文字表示 ,[object Object],[object Object],[object Object],[object Object],[object Object]
実装の仕組み(2)絵文字表示 MsimStreamConverter.prototype. onStopRequest  = function (aRequest, aContext, aStatusCode) { this.data = emoji_convert(this.data); var sis = Components.classes["@mozilla.org/io/string-input-stream;1"] .createInstance(Components.interfaces.nsIStringInputStream); sis.setData (this.data, this.data.length); this.listener.onDataAvailable  (this.channel, aContext, sis, 0, this.data.length); this.listener.onStopRequest  (this.channel, aContext, aStatusCode); }; サンプルソース
今後の課題 ,[object Object],[object Object],[object Object],[object Object],[object Object]
今後の課題 ,[object Object],[object Object],[object Object],[object Object],[object Object]
アドオン開発のコツ ,[object Object],[object Object],[object Object],[object Object]
ご清聴ありがとうございました

Weitere ähnliche Inhalte

Ähnlich wie 第10回Mozilla拡張機能勉強会-FireMobileSimulatorについて

モバイル開発@symfony
モバイル開発@symfonyモバイル開発@symfony
モバイル開発@symfonyDaichi Kamemoto
 
SORACOM UG 九州 #3 | SORACOM 紹介からの SORACOM Beam や Funnel を使いこなして ソラコムサンタ活動実績報告...
SORACOM UG 九州 #3 | SORACOM 紹介からの  SORACOM Beam や Funnel を使いこなして ソラコムサンタ活動実績報告...SORACOM UG 九州 #3 | SORACOM 紹介からの  SORACOM Beam や Funnel を使いこなして ソラコムサンタ活動実績報告...
SORACOM UG 九州 #3 | SORACOM 紹介からの SORACOM Beam や Funnel を使いこなして ソラコムサンタ活動実績報告...SORACOM,INC
 
Xamarin de:code セッション:Windows Phone / iOS / Android アプリ同時開発のススメ
Xamarin de:code セッション:Windows Phone / iOS / Android アプリ同時開発のススメXamarin de:code セッション:Windows Phone / iOS / Android アプリ同時開発のススメ
Xamarin de:code セッション:Windows Phone / iOS / Android アプリ同時開発のススメYoshito Tabuchi
 
Titanium Mobile
Titanium MobileTitanium Mobile
Titanium MobileNaoya Ito
 
Web リソースを活用した簡単アプリケーション開発(Windows Phone)
Web リソースを活用した簡単アプリケーション開発(Windows Phone)Web リソースを活用した簡単アプリケーション開発(Windows Phone)
Web リソースを活用した簡単アプリケーション開発(Windows Phone)Akira Onishi
 
Tech talk salesforce mobile sdk
Tech talk   salesforce mobile sdkTech talk   salesforce mobile sdk
Tech talk salesforce mobile sdkKazuki Nakajima
 
Concentrated HTML5 & Attractive HTML5
Concentrated HTML5 & Attractive HTML5Concentrated HTML5 & Attractive HTML5
Concentrated HTML5 & Attractive HTML5Sho Ito
 
次期Office製品群の新しい開発モデルの解説
次期Office製品群の新しい開発モデルの解説次期Office製品群の新しい開発モデルの解説
次期Office製品群の新しい開発モデルの解説kumo2010
 
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力ThinReports
 
SORACOM Technology Camp 2018 アドバンストラック2 | 売れば売るほど大変"を防ぐ!「IoT デバイス初期設定の工数削減」手法
SORACOM Technology Camp 2018 アドバンストラック2 | 売れば売るほど大変"を防ぐ!「IoT デバイス初期設定の工数削減」手法SORACOM Technology Camp 2018 アドバンストラック2 | 売れば売るほど大変"を防ぐ!「IoT デバイス初期設定の工数削減」手法
SORACOM Technology Camp 2018 アドバンストラック2 | 売れば売るほど大変"を防ぐ!「IoT デバイス初期設定の工数削減」手法SORACOM,INC
 
勉強会force#3 iOSアプリ開発
勉強会force#3 iOSアプリ開発勉強会force#3 iOSアプリ開発
勉強会force#3 iOSアプリ開発Kazuki Nakajima
 
Seasarプロジェクト徹底攻略
Seasarプロジェクト徹底攻略Seasarプロジェクト徹底攻略
Seasarプロジェクト徹底攻略takezoe
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejsTakayoshi Tanaka
 
ホット・トピック・セミナー「Metro」
ホット・トピック・セミナー「Metro」ホット・トピック・セミナー「Metro」
ホット・トピック・セミナー「Metro」Kohsuke Kawaguchi
 
jQuery と MVC で実践する標準志向 Web 開発
jQuery と MVC で実践する標準志向 Web 開発jQuery と MVC で実践する標準志向 Web 開発
jQuery と MVC で実践する標準志向 Web 開発Akira Inoue
 
Windows Phone / iOS / Android アプリ同時開発のススメ
Windows Phone / iOS / Android アプリ同時開発のススメWindows Phone / iOS / Android アプリ同時開発のススメ
Windows Phone / iOS / Android アプリ同時開発のススメYoshito Tabuchi
 

Ähnlich wie 第10回Mozilla拡張機能勉強会-FireMobileSimulatorについて (20)

モバイル開発@symfony
モバイル開発@symfonyモバイル開発@symfony
モバイル開発@symfony
 
SORACOM UG 九州 #3 | SORACOM 紹介からの SORACOM Beam や Funnel を使いこなして ソラコムサンタ活動実績報告...
SORACOM UG 九州 #3 | SORACOM 紹介からの  SORACOM Beam や Funnel を使いこなして ソラコムサンタ活動実績報告...SORACOM UG 九州 #3 | SORACOM 紹介からの  SORACOM Beam や Funnel を使いこなして ソラコムサンタ活動実績報告...
SORACOM UG 九州 #3 | SORACOM 紹介からの SORACOM Beam や Funnel を使いこなして ソラコムサンタ活動実績報告...
 
Xamarin de:code セッション:Windows Phone / iOS / Android アプリ同時開発のススメ
Xamarin de:code セッション:Windows Phone / iOS / Android アプリ同時開発のススメXamarin de:code セッション:Windows Phone / iOS / Android アプリ同時開発のススメ
Xamarin de:code セッション:Windows Phone / iOS / Android アプリ同時開発のススメ
 
Titanium Mobile
Titanium MobileTitanium Mobile
Titanium Mobile
 
Web リソースを活用した簡単アプリケーション開発(Windows Phone)
Web リソースを活用した簡単アプリケーション開発(Windows Phone)Web リソースを活用した簡単アプリケーション開発(Windows Phone)
Web リソースを活用した簡単アプリケーション開発(Windows Phone)
 
Tech talk salesforce mobile sdk
Tech talk   salesforce mobile sdkTech talk   salesforce mobile sdk
Tech talk salesforce mobile sdk
 
Concentrated HTML5 & Attractive HTML5
Concentrated HTML5 & Attractive HTML5Concentrated HTML5 & Attractive HTML5
Concentrated HTML5 & Attractive HTML5
 
次期Office製品群の新しい開発モデルの解説
次期Office製品群の新しい開発モデルの解説次期Office製品群の新しい開発モデルの解説
次期Office製品群の新しい開発モデルの解説
 
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
 
SORACOM Technology Camp 2018 アドバンストラック2 | 売れば売るほど大変"を防ぐ!「IoT デバイス初期設定の工数削減」手法
SORACOM Technology Camp 2018 アドバンストラック2 | 売れば売るほど大変"を防ぐ!「IoT デバイス初期設定の工数削減」手法SORACOM Technology Camp 2018 アドバンストラック2 | 売れば売るほど大変"を防ぐ!「IoT デバイス初期設定の工数削減」手法
SORACOM Technology Camp 2018 アドバンストラック2 | 売れば売るほど大変"を防ぐ!「IoT デバイス初期設定の工数削減」手法
 
勉強会force#3 iOSアプリ開発
勉強会force#3 iOSアプリ開発勉強会force#3 iOSアプリ開発
勉強会force#3 iOSアプリ開発
 
勉強会資料①
勉強会資料①勉強会資料①
勉強会資料①
 
Seasarプロジェクト徹底攻略
Seasarプロジェクト徹底攻略Seasarプロジェクト徹底攻略
Seasarプロジェクト徹底攻略
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs
 
20120118 titanium
20120118 titanium20120118 titanium
20120118 titanium
 
ホット・トピック・セミナー「Metro」
ホット・トピック・セミナー「Metro」ホット・トピック・セミナー「Metro」
ホット・トピック・セミナー「Metro」
 
HTML5最新動向
HTML5最新動向HTML5最新動向
HTML5最新動向
 
Mobylet20100613
Mobylet20100613Mobylet20100613
Mobylet20100613
 
jQuery と MVC で実践する標準志向 Web 開発
jQuery と MVC で実践する標準志向 Web 開発jQuery と MVC で実践する標準志向 Web 開発
jQuery と MVC で実践する標準志向 Web 開発
 
Windows Phone / iOS / Android アプリ同時開発のススメ
Windows Phone / iOS / Android アプリ同時開発のススメWindows Phone / iOS / Android アプリ同時開発のススメ
Windows Phone / iOS / Android アプリ同時開発のススメ
 

Mehr von Takahiro (Poly) Horikawa

Mehr von Takahiro (Poly) Horikawa (8)

The Land of Oz 20191109 Magic Leap x docomo meetup
The Land of Oz 20191109 Magic Leap x docomo meetupThe Land of Oz 20191109 Magic Leap x docomo meetup
The Land of Oz 20191109 Magic Leap x docomo meetup
 
エニグマ暗号とは何だったのか
エニグマ暗号とは何だったのかエニグマ暗号とは何だったのか
エニグマ暗号とは何だったのか
 
Android Wear Development
Android Wear DevelopmentAndroid Wear Development
Android Wear Development
 
Android開発の基礎_20101218
Android開発の基礎_20101218Android開発の基礎_20101218
Android開発の基礎_20101218
 
加速度センサーで円運動を検出する
加速度センサーで円運動を検出する加速度センサーで円運動を検出する
加速度センサーで円運動を検出する
 
PRML chapter5
PRML chapter5PRML chapter5
PRML chapter5
 
PRML chapter7
PRML chapter7PRML chapter7
PRML chapter7
 
ESPer2008-FireMobileSimulatorについて
ESPer2008-FireMobileSimulatorについてESPer2008-FireMobileSimulatorについて
ESPer2008-FireMobileSimulatorについて
 

Kürzlich hochgeladen

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

Kürzlich hochgeladen (9)

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

第10回Mozilla拡張機能勉強会-FireMobileSimulatorについて

  • 1. FireMobileSimulator について 2008/09/05 堀川隆弘 [email_address] http://d.hatena.ne.jp/thorikawa/
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11. 実装の仕組み(1)HTTPリクエスト function myHTTPListener(){}; myHTTPListener.prototype.observe = function(subject, topic, data){ if (topic == " http-on-modify-request ") { var httpChannel = subject.QueryInterface(Ci.nsIHttpChannel); httpChannel.setRequestHeader("hoge", "foo", false); }else if (topic == "app-startup") { Cc["@mozilla.org/observer-service;1"].getService(Ci.nsIObserverService). addObserver(this, "http-on-modify-request", false); } } } サンプルソース
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17. 実装の仕組み(2)絵文字表示 MsimStreamConverter.prototype. onStopRequest = function (aRequest, aContext, aStatusCode) { this.data = emoji_convert(this.data); var sis = Components.classes["@mozilla.org/io/string-input-stream;1"] .createInstance(Components.interfaces.nsIStringInputStream); sis.setData (this.data, this.data.length); this.listener.onDataAvailable (this.channel, aContext, sis, 0, this.data.length); this.listener.onStopRequest (this.channel, aContext, aStatusCode); }; サンプルソース
  • 18.
  • 19.
  • 20.