2010-01-11 136 views
4

是否可以在由同一開發人員簽名的兩個不同的iPhone應用程序之間共享核心數據存儲?我想開發一個應用程序,其中一個iPhone應用程序將保存一個數據流,然後可以被其他應用程序讀取。這甚至有可能嗎?非常感謝!iPhone應用程序之間的核心數據存儲共享

回答

5

不,這是不可能的。 iPhone應用程序在沙箱中運行,但無法訪問其他應用程序數據存儲。

編輯:是的,自定義的網址是可能的:

這裏閱讀別人的答案後。是的,可以使用它傳輸數據,但是,在我看來,我不推薦這個程序傳輸超過5kb的數據。沒有故障安全:沒有交易,也沒有關係。

+0

就像我想的那樣。但是,不要問。 – futureelite7 2010-01-11 09:36:30

+0

永遠不會傷害。確實 :) – 2010-01-11 09:43:43

1

您可以使用自定義URL方案將數據發送到第二個應用程序。

-t

2

這可以用在iPhone上自定義URL方案來完成,有一些注意事項。

如果您使用自定義url方案,則只有一個應用程序「擁有」數據。其他應用程序將不得不從主要的應用程序導入數據...移動果園做了這樣的文章,從精簡版的應用程序將數據移動到一個付費的應用程序

http://www.mobileorchard.com/lite-to-paid-iphone-application-data-migrations-with-custom-url-handlers/

但我最近碰到一個MIT來了所謂「SwapKit」可能做正是你想還有什麼......聽起來從他們的網站上概述不錯,行貨庫雖然我還沒有嘗試過:

http://infinite-labs.net/swapkit/

,這可能會或可能沒有任何幫助,但請查看「S pyPhone」太:

SpyPhone顯示了一種數據 惡意應用程序可以在越獄的iPhone非 收集。

http://github.com/nst/SpyPhone

1

還有系統紙板(我認爲這是NSPasteboard什麼的,沒有時間,現在要檢查),這是基本的剪貼板。我認爲你可以把它的東西,然後啓動另一個應用程序與URL告訴其他應用程序檢查粘貼板。

3

現在iOS 5與iCloud,你可以註冊這兩個應用程序具有相同的iCloud網址。在第二個應用程序初始化時,第一個應用程序的核心數據存儲被複制到第二個應用程序中。這可能需要一些時間---因此您需要在後臺線程中啓動持久存儲控制器,否則您的應用將被看門狗定時器終止。

但是,有一些警告。

  • 它似乎不能完全正確地工作。核心數據庫中的一些記錄似乎沒有被複制。根據我的經驗,似乎隨機哪些記錄沒有成功。也許它與原始商店的一致性有關。

  • 之後,tho應用程序似乎不會保持同步,與兩個不同的iDevices上的同一應用程序相反。

調試是有點痛的,因爲它從一個應用程序在相同的iDevice的改變它對之前需要10--20秒鐘從一個i設備改變之前被轉移到另一個,並且顯然無限期另一個應用程序註冊了相同的iCloud URL。

總之---你可以在第二個應用程序的init中使用iCloud複製大多數記錄,但很難保持它們同步。

相關問題