如何使用.net實現iPhone和電腦之間的文件傳輸

如何使用.net實現iPhone和電腦之間的文件傳輸

最近太忙,工作醫院兩頭跑,整個人有點分身乏術了。 所以老巢——這裏也很少更新了。
言歸正傳, 現在iPhone越來越火了, 各種iPhone周邊的應用需求也就越來越大。 AppStore更不必說,那是相當的火, 另外就是對iPhone進行管理的相關桌軟件,像國內的91手機助手, QQ手機助手等都可以對iPhone的文件進行管理,國外的軟件就更多的不計其數了。

其實, 這類軟件的實現也不是非常難, 大多數都是通過調用Apple的動態庫函數來實現iPhone和電腦的通信。常用的動態庫包括MobileDevice.dll、CoreFoundary.dll等幾個。 雖然都是apple自己提供的,但iTunes中並沒有開放更多多的功能,比如直接往iPhone、iPad上拷貝文件,從iPad或者iPhone上直接拷貝文件到windows等。所以,我們可以通過apple提供的庫函數來實現這樣的需求。

常用的函數列表可以google搜索到,比如以下這些

static int AMDeviceNotificationSubscribe
static int AMDeviceConnect(void* device);

static int AMDeviceDisconnect(void* device);

static int AMDeviceIsPaired(void* device);

static int AMDeviceValidatePairing(void* device);

static int AMDeviceStartSession(void* device);

static int AMDeviceStopSession(void* device);

static int AMDeviceGetConnectionID(void* device);

static int AMRestoreModeDeviceCreate

如果你熟悉.NET,可以看看開源代碼Manzana。 manzana是iPhone交互通信的.net開發包,該開源項目可以在google code上找到http://code.google.com/p/manzana/
其中, MobileDevice.cs是對CoreFoundary.dll和MobileDevice.dll的封裝, iPhone.cs則是對iPhone處理事件的進一步封裝。 首先要註冊一個設備連接和斷線的事件接收者,當iPhone或者iPad連接上電腦後會收到DeviceNotificationEvent,根據事件類型進行處理。 在項目下載頁面中可以找到簡單的UI界面實現了基本功能,也可以很好的理解其工作原理。 如果你也想開發一款類似的軟件那麼研究一下mazana將很有幫助。

使用manzana不但可以實現簡單的iPhone和電腦之間的文件傳輸,還可以實現更復雜的功能,不過這些需要對manzana進行修改和改進才行。

原創文章如轉載,請註明 
轉載自:FLYBLOG [http://www.flyblog.info

本文鏈接地址:http://www.flyblog.info/catprogramming/486.html
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章