2014-03-05 57 views
2

场景:如何在不切换应用程序的情况下在iOS应用程序之间传递数据?

  • 我已经开发了两个应用程序,应用程序A和应用程序B,这两个用户安装
  • 应用A正在运行
  • 应用A需要获得存储在应用B
  • 的字符串
  • 获取字符串后,应用程序A仍将运行
  • 用户应该看不到“切换动画”。也就是说,用户不应该收到任何反馈(例如切换到应用程序B,然后返回到应用程序A)此通信正在发生。

在Android上,这是微不足道的,但我无法弄清楚如何做到这一点的IOS 7

+0

那你试试?为什么这些应用是分开的?是需要计算还是数据已被应用程序B知道? – Wain

+0

这只能在App B已经提供数据的情况下完成。如果B位于后台,则应用程序A无法向B发出请求(至少在没有将用户切换至B的情况下)。 – rmaddy

+1

我在新的问题上更好地阐述了约束条件和情况:http://stackoverflow.com/questions/22215092/how-can-one-app-provide-data-to-another-without-swiching-apps – UsAaR33

回答

4

您有几种可能性:

  • 让应用B发送的字符串服务器和检索它在App一个
  • 让应用乙类贮存串钥匙串上,让应用程式阅读(使用相同的钥匙串访问集团作为解释here
  • 创建私人UIPasteboard分享信息(如解释here)。

PS:应用程序A和B必须来自同一供应商,或没有这些可能性将在iOS 7.

编辑工作:作为@rmaddy指出的那样,这些只会工作如果App B在App A要求之前提供数据。

+1

当然没有除非App B在App A提出要求之前已经提供了数据。 – rmaddy

+0

哦,应用程序A和应用程序B来自不同的供应商。这个信息虽然有帮助,我会提出一个新问题。 – UsAaR33

0

类似于http://Parse.comhttp://openkeyval.org/可以让您轻松地将简单数据快速存储到“云端”&。根据一个系统将它从一个应用程序存储起来,该系统可让您在另一个应用程序中推演出该密钥。然后通过网络从第二个应用程序中检索它。

显然你需要一个网络连接,但是鉴于你只是在谈论字符串,即使在一个狡猾的E或3G连接上也应该没问题。

(我决不会与解析或openkeyval无关。我已经使用解析为一个开发,我认为他们是很好的。)

+0

如果我不想让应用程序A向用户请求凭据,我该如何安全地执行此操作? (第三方无法访问云中的数据应用程序B商店) – UsAaR33

+0

如果您想要真正的安全性,那就更难了,但是如果您想要一个正常的隐私级别,只需以难以轻松的方式选择您的密钥猜到了。作为另一种选择,您可以让这两个应用仅通过应用切换ONCE共享密钥,之后他们都可以将该密钥用作云URL的一部分 – buildsucceeded

+0

我不想进行任何应用切换。我怎么能安全地选择钥匙,因为A和B都需要知道它们? – UsAaR33

相关问题