精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

淺析Windows Mobile Sensors API庫的設計

移動開發
這里將介紹Windows Mobile Sensors API庫的設計,希望本文能對大家了解Mobile Sensors API庫有所幫助。

Windows Mobile 7正在開發過程中,相比較Android和iPhone的紅火,Windows Mobile似乎還是不溫不火。這里我們要談到的是Windows Mobile Sensors API庫的設計。

背景

熱烈歡迎 simon_new88 同學加入 Mobile Sensors API - Native unified APIs for Windows Mobile Sensors 項目。為了他更快熟悉,我把GSensor的設計記錄下來。關于該項目的一些信息可以參考 Windows Mobile下的重力感應器(Gravitational Sensor)開發Windows Mobile下使用CppUnitLite輸出測試結果

簡介

本文講述Windows  Mobile Sensors API庫中重力感應器部分(GSensor)的設計。講述一個統一訪問接口的Sensor庫的設計方法和一些設計模式的應用。

需求

統一訪問接口的Sensor庫(Native unified APIs for Windows Mobile Sensors)的需求:

1.統一的API訪問接口。由于為HTC和Samsung移動設備提供各自提供DLL來封裝Sensor,所以提供不一樣的訪問接口。使用Windows  Mobile Sensors API庫,應用開發人員在開發客戶端(Client)代碼時不需要知道具體設備的API,只是需要調用Windows  Mobile Sensors API庫的統一接口就可以得到相應的GSensor運行信息。

2.統一輸出GVector的單位。由于HTC和Samsung移動設備各自的GSensor庫輸出的GVector的單位是不一樣的,HTC輸出是-100到100的值,而Samsung又不一樣。所以Windows  Mobile Sensors API庫需要把輸出值的單位進行統一。應用開發人員在開發客戶端(Client)代碼時,一套代碼可以同時支持HTC和Samsung的移動設備。

設計

總體設計

GSensor部分的總體類圖設計:

GSensor部分的總體類圖 

下面文章分部分講述。

GSensor設計

GSensor設計

GSensor是一個抽象類,定義了統一的訪問接口,主要提供三個主要的接口:

1.取GVector信息接口。客戶端調用GetGVector()函數可以得到實時的GVector信息。

2.事件訂閱接口。當客戶端調用Register()訂閱GVector事件,通過Unregister()函數退訂該事件。事件的發送通過Observer模式實現,后面講到。

3.單位調整接口。客戶端可以調用Scale()來調整想要的單位。

GetGVector(),Register()和Unregister()為純虛函數。表示GSensor指定的契約(contract),其繼承子類SamsungGSensor和HTCGSensor必須實現這些接口以厲行該契約。這兩個子類在實現這些接口時分別調用各自平臺相關的DLL來實現。

由于HTC的DLLHTCSensorSDK.dll沒有定時回調函數的實現,所以在Windows  Mobile Sensors API庫實現了一個ThreadTask類來定時查詢GVector的信息。ThreadTask類封裝了Start(),Stop()和ProcessTask()函數,Start()負責產生一個線程,Stop()負責結束由Start()產生的線程,而ProcessTask()負責定期執行任務。執行任務的具體內容在Process()中定義,Process()也是純虛函數,也就是contract,由子類實現需要執行的具體任務,這里可以認為是Method Template模式的實現。HTCGSensor繼承了ThreadTask類,然后重載了Process()定時查詢GVector信息,然后通過調用GSensor的GVectorChanged()函數來通知Client。后面將講Observer模式,怎么GSensor怎么通知Client。

GSensorFactory的設計

GSensorFactory的設計

這里使用了Simple Factory模式,客戶端只是需要調用GSensorFactory就可以取出GSensor的指針,GSensorFactory可以判斷設備類型取出SamsungGSensor或者HTCGSensor的實例。關于Simple Factory可以參考 我的實用設計模式之Simple Factory,Factory Method和Abstract Factory

Observer的設計

從需求看,Windows  Mobile Sensors API庫需要實現事件訂閱接口。當客戶端訂閱了消息時,客戶端會自動接收到GVector信息,這個功能是使用Observer模式實現的。關于Observer模式可以參考 我的實用設計模式之Observer模式

Observer的設計

我使用了一個開源的Observer模式實現,和經典的Observer的實現有點差異。但是目標是一致的,就是實現消息提供方和消息接收方的解耦。那個實現可以參考Experiences of Implementing the Observer Design Pattern (Part 3)

Notifier是經典Observer模型的Abstract Subject。GSensor是Concrete Subject繼承Notifier,通過調用notify()函數來通知Observers。Listener是經典Observer模式的Abstract Observer。和經典Observer模式有點不一樣。Notifier通過Event類來通知Listener。而Listener增加了一層繼承于GSensorListener。GSensorListener根據具體通知內容而定義。這里通過C++的模板類來實現的。關于這方面的實現可以參考Template metaprogramming

template <class interface_type>
class Listener : public interface_type

SensorTesterView是Concrete Observer。需要實現GSensor_GVectorChanged()來處理通知消息。

Singleton的設計

Singleton的設計 

SamsungGSensor和HTCGSensor分別設計為Singleton,因為不管有多少個消息訂閱者(Listener)都只有一個消息發送方。也就是一套系統里面只有一個SamsungGSensor或者HTCGSensor的實例。

關于Mobile Sensors API項目

這個項目還是在起步階段,當前實現了samsung的重力感應器,我把項目host到 Mobile Sensors API - Native unified APIs for Windows Mobile Sensors 了,我會持續改進,把各種sensors的實現到這個項目中。

由于我手頭上沒有HTC的機器,如果誰有興趣可以加入到項目中幫我測試HTC設備,由于加入了Unit Test,測試變得很簡單,只需要執行程序,參考測試輸出文件就可以了,不需要調試。當然這個測試過程是一個不斷迭代的過程,只是Unit Test把子過程簡單化了。

源代碼:http://mobilesensor.codeplex.com/SourceControl/ListDownloadableCommits.aspx

環境:VS2008 + WM 6 professional SDK + Samsung Windows Mobile SDK

【編輯推薦】

  1. 微軟開始組織開發大型Windows Mobile應用程序
  2. Windows Mobile上使用WINCE自帶數據庫
  3. 微軟將推出Windows Mobile應用軟件商店
  4. 微軟網絡商店正式開始接受應用程序
  5. Windows Mobile在線商店細則已由微軟發布
責任編輯:彭凡 來源: 博客園
相關推薦

2011-04-25 17:17:55

Gesture APIWindows Mob

2011-07-19 17:09:44

jQuery Mobi事件

2009-09-25 11:04:07

C++動態加載DLL

2011-07-19 17:03:31

jQuery Mobi默認配置

2009-11-03 12:52:38

VB.NET Wind

2022-11-24 13:17:43

2009-08-17 13:18:01

C#調用Windows

2009-08-17 13:26:20

C#調用Windows

2009-06-30 10:48:49

WinCEWindows Mob

2009-05-17 10:48:19

微軟Windows Mob移動OS

2009-04-10 08:58:47

Windows Mob微軟移動OS

2009-04-08 09:17:54

Windows MobWINCE數據庫

2009-12-15 15:31:47

2009-12-07 17:42:07

Windows Mob

2009-07-08 10:02:41

Servlet 3.0

2009-03-09 18:53:26

WIndows MobSilverlight

2009-03-06 19:14:41

Windows Pho微軟

2009-09-02 17:28:26

C#程序設計Windows窗體

2010-02-02 10:10:58

Windows Mob

2011-09-01 10:21:52

jQuery Mobi元素
點贊
收藏

51CTO技術棧公眾號

亚洲aⅴ网站| 成人性生交大片免费看午夜| 天天综合亚洲| 精品精品欲导航| 欧美日本视频在线观看| 国产最新视频在线观看| 国产一区二区三区免费在线观看| 久久久噜噜噜久噜久久| 成人小视频免费看| 国产成人夜色高潮福利影视| 91久久一区二区| 黄色小视频大全| 青春有你2免费观看完整版在线播放高清 | 日本在线视频网址| 久久久99精品免费观看| 国产日韩欧美在线播放| 人人干人人干人人干| 日韩精品2区| 亚洲精品美女网站| 亚洲av无一区二区三区久久| 桃花岛成人影院| 亚洲午夜久久久久久久久电影院| 日韩视频在线播放| 无码精品人妻一区二区三区影院| 久久福利资源站| 国产成人综合精品| 欧美一级视频免费观看| 欧美日韩一区二区三区四区在线观看| 亚洲性生活视频| 91av在线免费| 粉嫩一区二区三区四区公司1| 欧美三级午夜理伦三级中视频| 僵尸世界大战2 在线播放| 国产激情在线| 国产精品的网站| 日本在线观看不卡| 免费黄网站在线观看| jlzzjlzz国产精品久久| 成人看片视频| 丰满人妻av一区二区三区| 国产一区视频在线看| 国产精品视频一区国模私拍 | 一区二区三区伦理片| 加勒比久久高清| 精品国产乱码久久久久久1区2区| 污污视频网站在线| 亚洲伦理久久| 在线电影国产精品| 欧美视频国产视频| 国产一区二区视频在线看| 在线播放国产精品二区一二区四区 | 色呦呦在线看| 亚洲一区二区中文在线| h无码动漫在线观看| 色爱综合区网| 婷婷一区二区三区| 黄色片视频在线免费观看| 中文不卡1区2区3区| 好吊成人免视频| 国产精品69页| 精品美女一区| 欧美一区二区网站| 久久久男人的天堂| 天美av一区二区三区久久| 亚洲精品一区二区三区不| 国产女主播喷水高潮网红在线| 免费看成人吃奶视频在线| 亚洲日本中文字幕| 日本欧美一区二区三区不卡视频| 欧州一区二区| 欧美精品免费在线观看| 久久免费小视频| 小嫩嫩精品导航| 国产精品欧美激情| 国产xxxx在线观看| av不卡一区二区三区| 欧美在线视频一区二区三区| 成年人视频网站在线| 最新国产成人在线观看| 国产freexxxx性播放麻豆| 日本黄色免费在线| 欧美日韩一区成人| 麻豆短视频在线观看| 亚洲女娇小黑人粗硬| 日韩在线精品视频| 日本一级黄色录像| 奇米888四色在线精品| www.成人av.com| 男男激情在线| 亚洲男人都懂的| 午夜肉伦伦影院| 99综合99| 亚洲欧美日韩国产成人| 2025国产精品自拍| 丝袜美腿亚洲综合| 国产精品久久久久久久小唯西川| 青青草视频在线观看| 亚洲精品中文在线影院| 久久精品.com| 97久久亚洲| 在线播放日韩专区| 香蕉免费毛片视频| 国产一区三区三区| 欧美日韩综合精品| av电影院在线看| 7777精品伊人久久久大香线蕉 | www.国产三级| 国产欧美精品一区二区色综合 | 亚洲国产精品推荐| 91麻豆精品成人一区二区| 亚洲专区欧美专区| 成人黄色在线免费观看| 在线免费观看黄| 岛国精品视频在线播放| 国产chinesehd精品露脸| 四季av在线一区二区三区| 欧美亚洲另类在线| 成人午夜免费福利| 亚洲女同一区二区| 欧美第一页浮力影院| 亚洲成aⅴ人片久久青草影院| 欧美成人一区在线| 夜夜躁很很躁日日躁麻豆| 99久久夜色精品国产网站| 久久综合久久久久| 中文字幕成人| 日韩最新中文字幕电影免费看| 日韩中文字幕在线观看视频| 成人av在线资源网| 国产女主播av| 日本久久一区| 日韩中文字幕免费视频| 小泽玛利亚一区二区三区视频| fc2成人免费人成在线观看播放| 亚洲国产一二三精品无码| 欧美在线se| 日韩亚洲欧美中文在线| 做爰无遮挡三级| 国产视频亚洲色图| 无遮挡又爽又刺激的视频| 国产96在线亚洲| 高清一区二区三区日本久| 高h放荡受浪受bl| 一区二区三区小说| 成人欧美精品一区二区| 欧美日韩hd| 99国产超薄肉色丝袜交足的后果| 成人影院在线观看| 日韩欧美国产一区二区三区| 欧美成人精品一区二区免费看片| 国产一区视频导航| 真人抽搐一进一出视频| 国产精品网站在线看| 久久久免费电影| 天天操天天干天天插| 午夜精品福利久久久| 日本xxxx裸体xxxx| 日本欧美韩国一区三区| 亚洲综合av一区| 国产精品亚洲欧美一级在线| 九九久久综合网站| 天天操天天操天天| 91精品福利在线| 亚洲少妇xxx| 国产成人免费视| 男人添女人下面高潮视频| 免费一区二区三区视频导航| 国产精品亚洲精品| 污污的网站在线看| 亚洲精品电影在线| 久久国产香蕉视频| 亚洲精品午夜久久久| www.日本高清| 欧美96一区二区免费视频| 51xx午夜影福利| 日本欧美韩国国产| 国产日韩精品视频| bl视频在线免费观看| 日韩精品在线观看网站| 亚洲在线精品视频| 亚洲成人777| av永久免费观看| 粉嫩av亚洲一区二区图片| 99999精品视频| 66国产精品| 麻豆久久久9性大片| 激情久久免费视频| 日产精品久久久一区二区福利| 看女生喷水的网站在线观看| 精品粉嫩超白一线天av| 真实新婚偷拍xxxxx| 亚洲美女屁股眼交| 亚洲午夜久久久久久久国产| 国产美女一区二区| 91av俱乐部| 亚洲国产一成人久久精品| 免费精品视频一区二区三区| 91亚洲精品在看在线观看高清| 5566成人精品视频免费| 97超碰资源站在线观看| 亚洲一区二区久久| 欧美综合视频在线| 8x8x8国产精品| 国产黄色免费视频| 午夜精品成人在线| 久久香蕉精品视频| 国产精品成人在线观看| 亚洲黄色在线网站| 国产成a人亚洲| 男生操女生视频在线观看| 欧美一级一区| 成人免费性视频| 一二三区不卡| 一本久道久久综合狠狠爱亚洲精品| 欧美精品中文字幕亚洲专区| 91网站在线免费观看| 日韩漫画puputoon| 欧美最猛性xxxx| 91在线超碰| 欧美福利视频网站| 麻豆网站在线看| 中文字幕日韩精品有码视频| 飘雪影视在线观看免费观看 | av在线资源站| 亚洲日本欧美日韩高观看| 五月天激情开心网| 欧美xxx久久| a级片在线视频| 欧美电影影音先锋| 国产女人18毛片水真多| 欧美日韩久久一区二区| 国产91av在线播放| 欧美三片在线视频观看| 中文在线字幕av| 欧美在线一二三| 波多野结衣视频网址| 色综合久久久久| 久久国产黄色片| 欧美日韩另类在线| 国产成人在线播放视频| 午夜视频在线观看一区| 精品无码久久久久| 亚洲mv在线观看| 国产精品7777777| 欧美日韩日本国产| 在线能看的av| 色香蕉久久蜜桃| 日本一区二区三区久久| 欧美日韩另类一区| 99久久精品国产一区二区成人| 欧美一区二区三区的| 国产黄色片av| 亚洲大胆人体视频| 四虎电影院在线观看| 亚洲欧美一区二区三区情侣bbw | 秋霞蜜臀av久久电影网免费| 久久99精品国产一区二区三区| 欧美日韩导航| 日本免费高清不卡| 久久激情电影| 日本xxxxx18| 亚洲茄子视频| 熟女少妇精品一区二区| 麻豆精品在线看| 一起草最新网址| 99久久精品国产观看| 91视频在线网站| 日韩毛片一二三区| 久久午夜无码鲁丝片| 色哟哟精品一区| 91影院在线播放| 亚洲电影免费观看高清完整版在线| 亚洲色图另类小说| 中文字幕视频在线免费欧美日韩综合在线看| 亚洲视频tv| 欧美极度另类性三渗透| 成人av三级| 91久久中文字幕| 狼人精品一区二区三区在线| 日韩一区不卡| 国产精品magnet| 亚洲成人福利在线观看| 国产精品一级片| 国产精品亚洲无码| 亚洲啪啪综合av一区二区三区| 国产精品suv一区二区| 一本大道久久a久久精品综合| 91精品中文字幕| 日韩精品免费电影| 国产淫片在线观看| 茄子视频成人在线| 欧州一区二区三区| 青青草久久网络| 禁久久精品乱码| 伊人国产在线视频| 97se狠狠狠综合亚洲狠狠| 天天爽天天爽天天爽| 图片区小说区区亚洲影院| 中文字幕一区二区三区波野结| 亚洲第一男人天堂| 久草中文在线| 国产成+人+综合+亚洲欧洲| 一区二区日韩| 一区二区三区不卡在线| 亚洲深夜福利| 波多野结衣办公室双飞| 中文字幕在线一区| 亚洲自拍一区在线观看| 欧美成人一区二区三区片免费| 青青久在线视频| 97在线视频国产| 视频精品二区| 国产免费色视频| 免费观看在线色综合| 成人无码www在线看免费| 一区二区成人在线| 国产精品国产三级国产普通话对白 | 91久久久一线二线三线品牌| 欧美偷拍自拍| 一本久道综合色婷婷五月| 99精品久久久久久| 国产精品第二十页| 日韩欧美在线观看一区二区三区| 中文字幕在线视频区| 国产成人精品综合| 久久99影视| 成人在线看视频| 91亚洲国产成人精品一区二三| 免费一级全黄少妇性色生活片| 欧美精选一区二区| 免费在线观看黄| 国产日韩欧美视频在线| 欧美gvvideo网站| 久久黄色片网站| 国产精品久久久久天堂| 91精品中文字幕| 超碰精品一区二区三区乱码| 国产95亚洲| 妞干网这里只有精品| 韩国女主播成人在线观看| 日本 欧美 国产| 91麻豆精品国产| 18在线观看的| 成人区精品一区二区| 合欧美一区二区三区| 午夜福利三级理论电影| 午夜电影一区二区三区| 亚洲 美腿 欧美 偷拍| **欧美日韩vr在线| 国产亚洲欧美日韩在线观看一区二区 | 精品日韩一区二区三区免费视频| 天堂8中文在线| 草莓视频一区| 野花国产精品入口| 国产综合精品在线| 欧美日韩国产大片| 50度灰在线| 国产一区在线免费观看| 先锋亚洲精品| 992在线观看| 日韩视频一区二区| 欧亚在线中文字幕免费| 日本一区二区三区精品视频| 麻豆中文一区二区| 全网免费在线播放视频入口 | 91九色在线免费视频| 国产一区清纯| 免费观看av网站| 欧美浪妇xxxx高跟鞋交| 三级网站视频在在线播放| 久久精品99久久| 久久成人免费日本黄色| 麻豆chinese极品少妇| 日韩高清av一区二区三区| 天堂久久午夜av| 国产日韩欧美大片| 91在线精品秘密一区二区| 亚洲天天综合网| 欧美激情视频免费观看| 国产成人影院| 性一交一黄一片| 色婷婷亚洲综合| 2020国产在线视频| 日韩av电影免费在线观看| 激情成人午夜视频| 在线能看的av| 九九热最新视频//这里只有精品| 色婷婷久久久| 日韩久久久久久久久久久| 日韩欧美在线看| av在线影院| 台湾成人av| 成人动漫一区二区在线| 亚洲综合精品视频| 97香蕉久久夜色精品国产| 性xxxx欧美老肥妇牲乱| 久久丫精品国产亚洲av不卡| 欧美一区二区三区四区视频| 国模冰冰炮一区二区| 国风产精品一区二区|