When I first built Coinshooter, I knew this would be a problem. I use an iPhone 4S, but I knew I would want to upgrade one day, and I knew I would want to move my Coinshooter data to that new phone. Well, that day has come, less than a year after Coinshooter 1.0 went live.
With the arrival of the iPhone 5S and iPhone 5C, I imagine that quite a few Coinshooter users will be wanting to upgrade in the next few months. So, it was time to make it easy to move your data to your new phone.
What Can I Do with this Process?
The great thing about this feature is that you can do a several things with it, even if you’re not upgrading your phone. Here are a few:
- Backup your database – you can save your Coinshooter data to your computer and restore it at any time without having to restore your whole iPhone
- Archive your Coinshooter data – I don’t know if anyone will want to do this, but if you find tons of treasures and take lots of photos, you may find your Coinshooter database getting really large. The images can take up quite a bit of room, even though they are stored as JPEG at 60% quality (the recommended settings for a balance between size and quality). Some folks may want to save off their database each year and make an annual archive. They can then delete the database from their phone and start a new one. If they want to go back to a prior year, they would have to save the current database and import the new one. When they were done, they would reimport their current database
- Copy the database to another iOS device. Say you’ve got an iPhone and an iPad, and you want to get your data on both devices. You can use this process to copy the database from one device to the other. This process DOES NOT SYNCHRONIZE DATABASES. It REPLACES an existing database with one you’ve exported. So, BE SURE TO SAVE OFF ANY DATABASE YOU WANT TO KEEP. You can also use this process to put your data on a friend’s device. Just copy the file onto a Flash drive or something and let them put it on their computer and load it to their device through iTunes. They need to make sure they save off their database before overwriting it with yours!
- Copy your database to a new Phone (or iPad). This is the same as the last one, but this is probably why most people will use it. Of course, you can probably just set up your new Phone by using the data from your existing phone. That should copy your Coinshooter data forward as well. But with this process, you now have a surefire way to keep your precious data.
Byron, why didn’t you just sync the data through iCloud?
I tried! The best way to accomplish using Coinshooter on multiple devices is to use iCloud synchronization. I built this into a pre-release version of Coinshooter, but it was not as effective as we require for the data that we’re moving. Synchronizing images did not work well at all. Those of you who are developers have probably heard about the problems and ineffectiveness of iCloud sync with Core Data. Coinshooter exhibited that problem in spades.
Well, why didn’t you sync through an online database?
Another great way to keep your data synchronized, no matter what device you are on, is by setting up a web service that would store all of your data and feed it to your devices as needed. There are lots of advantages to this process, and this is how nearly all big corporations store your valuable data.
I did not pursue this route because I want you to have the utmost confidence that your data is completely invisible to me or anyone else except the people you choose to email it to or the data that you post to Twitter (Note: the data sent to Twitter does not include location data unless you personally type it in).
The web is awesome for making data accessible. That is a two-edged sword.