iPhone应用程序之间的核心数据存储共享
是否可以在由同一开发人员签名的两个不同的iPhone应用程序之间共享核心数据存储?我想开发一个应用程序,其中一个iPhone应用程序将保存一个数据流,然后可以被其他应用程序读取。这甚至有可能吗?非常感谢!iPhone应用程序之间的核心数据存储共享
不,这是不可能的。 iPhone应用程序在沙箱中运行,但无法访问其他应用程序数据存储。
编辑:是的,自定义的网址是可能的:
这里阅读别人的答案后。是的,可以使用它传输数据,但是,在我看来,我不推荐这个程序传输超过5kb的数据。没有故障安全:没有交易,也没有关系。
您可以使用自定义URL方案将数据发送到第二个应用程序。
-t
这可以用在iPhone上自定义URL方案来完成,有一些注意事项。
如果您使用自定义url方案,则只有一个应用程序“拥有”数据。其他应用程序将不得不从主要的应用程序导入数据...移动果园做了这样的文章,从精简版的应用程序将数据移动到一个付费的应用程序
但我最近碰到一个MIT来了所谓“SwapKit”可能做正是你想还有什么......听起来从他们的网站上概述不错,行货库虽然我还没有尝试过:
http://infinite-labs.net/swapkit/
,这可能会或可能没有任何帮助,但请查看“S pyPhone”太:
SpyPhone显示了一种数据 恶意应用程序可以在越狱的iPhone非 收集。
还有系统纸板(我认为这是NSPasteboard什么的,没有时间,现在要检查),这是基本的剪贴板。我认为你可以把它的东西,然后启动另一个应用程序与URL告诉其他应用程序检查粘贴板。
现在iOS 5与iCloud,你可以注册这两个应用程序具有相同的iCloud网址。在第二个应用程序初始化时,第一个应用程序的核心数据存储被复制到第二个应用程序中。这可能需要一些时间---因此您需要在后台线程中启动持久存储控制器,否则您的应用将被看门狗定时器终止。
但是,有一些警告。
它似乎不能完全正确地工作。核心数据库中的一些记录似乎没有被复制。根据我的经验,似乎随机哪些记录没有成功。也许它与原始商店的一致性有关。
之后,tho应用程序似乎不会保持同步,与两个不同的iDevices上的同一应用程序相反。
调试是有点痛的,因为它从一个应用程序在相同的iDevice的改变它对之前需要10--20秒钟从一个i设备改变之前被转移到另一个,并且显然无限期另一个应用程序注册了相同的iCloud URL。
总之---你可以在第二个应用程序的init中使用iCloud复制大多数记录,但很难保持它们同步。
就像我想的那样。但是,不要问。 – futureelite7 2010-01-11 09:36:30
永远不会伤害。确实 :) – 2010-01-11 09:43:43