Search code examples
iosdata-storage

Share data across multiple apps on iOS


I know there are quite a few threads on this, but it seems none of them would satisfy what I am trying to look for. Here's my constraints:

  • not a hack that uses private API/framework or undocumented directory access that would run the risk of app being rejected because of that
  • being able to share data across different vendors / app developers
  • data can persist outside the lifecycle of the app (even after app is deleted)

UPDATED: I was in general trying to stay away from using a 3rd party cloud-based service to achieve the goal as this would introduce additional external dependency. But if I have to, I was hoping it could satisfy this one constraint

  • being able to tell which iOS device it is communicating with. It shouldn't have to uniquely identify the device (which will go into that evil UDID discussion route as we all experienced ). But as long as it can differentiate among different iOS devices it should be fine.

Solution

  • Maybe this blog post by TextExpander authors will help:

    Smile has responded to this by discussing the issue with Apple engineers at WWDC, filing a bug (#14168862), and checking up on the status of that bug. We also developed a workaround by storing the TextExpander data in a new place. Reminders requires user consent to store and retrieve data. Completed reminders are not normally shown in its interface. Long-past reminders appear at the bottom of the completed reminders.

    TextExpander touch 2.1 (and later) supports storing shared snippet data in a long-past, completed reminder. We produced an updated SDK and kept our developers posted on its progress. Our final SDK was ready within a few hours of the end of Apple's official iOS 7 announcement.

    UPDATE (22.11.2013) This might not be the best way to do that, because TextExpander's team recently had problems with the App Review Team.