Is there a way to do this? I intend to release a free version of my game as well as a paid for one. As I understand it, each version will need it’s own Bundle Identifier, and therefore cannot share the same persistent data path.
When the paid for version is first run, I want to see if the user has any data from the free version and migrate this if so.
I thought I might be able to do something like this:
if (firstRun) {
string companyDataDirectory = Directory.GetParent(Application.persistentDataPath).FullName;
string freeVersionDirectory = Path.Combine(companyDataDirectory, "GameNameFree");
if (Directory.Exists(freeVersionDirectory)) {
// get user data from free version directory
}
}
This wouldn’t work though, as each platform stores data in a different place. I suppose I might be able to do this using custom code for each platform, but hopefully there’s a better way?
Windows 7 persistentDataPath: C:/Users/Username/AppData/LocalLow/CompanyName/GameName
Android persistentDataPath: /Data/Data/com.companyname.gamename/Files