0

Is it possible? It looks like if two apps (or variants of the same app) use the same bundle identifier, they will both have access to the same data files -- is that correct?

I'm looking for the simplest way for the user to upgrade to the full version while preserving the data from the lite version.

TotoroTotoro
  • 17,524
  • 4
  • 45
  • 76

2 Answers2

3

Yes, if multiple apps use the same bundle identifier, they will be recognized as the same app - but you can't have multiple apps with the same identifier in the App Store or on the device!

There is currently no way to share files between different Apps (with unique bundle identifiers) via the local file system. You can pass some data with custom URL schemes from one running app to another, but I think that's not what you're looking for.

Apple's suggested way of dealing with this situation is to have just one app, and implement In-App purchases to upgrade to the full version.

Here's a very similar SO question: Share data between two or more iPhone applications

Community
  • 1
  • 1
Andreas Ley
  • 9,109
  • 1
  • 47
  • 57
  • So, if I implement the in-app upgrade purchase, I guess it means that I'll end up with people running the full version with one of the two bundle identifiers (lite or full), right? I'm going to add the iCloud support next, and I wonder if having to support 2 different bundle identifiers there would cause problems. – TotoroTotoro May 04 '12 at 23:00
  • @BlackRider If you want to go the In-App purchase route, you would only have a single app (with just one bundle identifier), which contains both versions. The users would always start with the "lite" version, but could unlock additional functionality with In-App purchases. – Andreas Ley May 06 '12 at 19:32
  • thanks. As it happens, I've already released the paid app. I don't think that switching it to the fermium model would be a good business decision. – TotoroTotoro May 07 '12 at 06:43
0

If you create multiple targets, you can create a lite and full version accessing the same data. Using #ifdef you can limit access based on settings! Here's a link: How to build both Lite and Full version of iPhone app based on one xcode project? Hope this helped!

Community
  • 1
  • 1
waylonion
  • 6,866
  • 8
  • 51
  • 92