2008-10-09 42 views
13

我工作的一個iPhone應用程序,將允許數據的瀏覽和編輯,我想保持同步桌面應用程序。我沒有在SDK中看到任何直接解決數據同步的問題,也找不到任何可以讓我「掛鉤」到iTunes同步過程中的任何東西。如何在iPhone和另一臺計算機之間同步應用程序數據?

我可以做一些缺憾像照片或地址簿條目隱藏數據,但只是看起來像一個壞主意。我可以使用WebDAV或HTTP來獲取/將數據放入服務器,但會使應用程序更加複雜。

我想我期待這是iPhone應用程序的常見用例(在桌面和iPhone之間同步任意應用程序數據),並且SDK中會包含一組涵蓋此應用程序的API。也許有,我無法找到它。

回答

5

兩種常用的方法有:直接通過WiFi

同步與桌面應用程序(使用Bonjour等來發現iPhone /桌面應用程序的端點如其他人建議在這裏)。

另一種選擇是與共享文件位置同步 - FTP,MobileMe,WebDAV,另一臺服務器上的Web服務等。因此,iPhone和桌面應用程序將讀/寫共享位置,以便其他人可以看到更新。

正如其他人所說,目前沒有蘋果公司提供方法(使用iTunes或其他方式),並且沒有跡象表明在不久的將來,除非iPhone與未來支持第三方軟件捆綁銷售,第三方推送更新。 (我真的懷疑這是事實,但你永遠不知道。)

4

我還沒有嘗試過這一點我自己,但我認爲Bonjour提供了與其他機器連接的服務,你可能會找到一些答案尋找到那個

1

我也在工作需要的應用程序的能力爲了共享數據,我發現從iPhone獲取信息的唯一合理/非破解方式是通過NSURLConnection。

(個人意見)我不預見蘋果提供掛鉤同步過程。(/個人意見)

3

這是一個普遍的問題,但不幸的是不是由SDK解決。

由於iPhone支持Bonjour服務發佈和發現,你可以很容易地發佈在手機上的服務,聽它在桌面上,當他們發現彼此連接。 (或者你可以在桌面上發佈服務和手機連接,無論哪種方式並不重要。)所有在卓悅的文檔MACO OS X的適用於iPhone OS。

注意,卓悅剛剛發佈的服務;一旦你找到它,你仍然必須使用套接字來連接和傳輸數據。

基本上,有沒有簡單的方法來做到這一點,但也有足夠的可用,你可以同步體驗無痛用戶的工具。

2

只是爲了更新這個答案 - 因爲這個問題被問的時候,蘋果已經增加了支持用於將文件同步到iTunes(並讓用戶通過iTunes的「應用程序」選項卡訪問它們)。

爲此,您必須在應用程序的Info.plist文件中將UIFileSharingEnabled鍵設置爲YES。然後,您可以使用標準文件IO API將文件保存到應用程序的Documents目錄中。

這裏還有更多的信息:http://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/StandardBehaviors/StandardBehaviors.html#//apple_ref/doc/uid/TP40007072-CH4-SW6

這包括你應該實現(即確保您還支持閱讀我們添加到您的文檔目錄中的文檔的行爲 - 雖然我見過很多的應用程序,唐」噸做到這一點)。

+0

是的,並且iOS 5還支持iCloud支持。如果您的應用程序使用核心數據,那麼實現可通過iPhone應用程序,桌面應用程序或Web應用程序訪問的雲存儲將會相對簡單。 – Mac 2011-08-30 00:38:18

相關問題