There’s a lot of MD5 iOS solutions floating around out there. From the ones I’ve seen, they all have a common problem. They all assume you want to MD5 an NSData instance, meaning all of the data must be in memory in order to digest it.
Now this will work in most cases, but say you want to MD5 a 1 gigabyte file… on an iPhone. You’re probably going to have a few problems.
Whenever you have a couple of apps that are extremely similar, it will make sense to share the code between the two. For example, a Lite version and a Paid version of the same app, or the same app skinned differently for different clients. At first you might be tempted in duplicating the project. Don’t. If the code splits then it’s going to be a nightmare copying changes between two places, or even just having them in two separate projects.
Automatic Reference Counting (ARC) has been around since iOS 5, however it has been an optional tick box when beginning a new project, and if not selected, Manual Reference Counting (MRC) is used. As of Xcode 5, the ARC tick box is missing, and all new projects start with ARC. While you can still disable ARC manually in the project's config file, this is probably a good sign that ARC is the way to go for new projects.
When you send a build to your client or testers, it can be difficult telling development builds from AppStore builds. At b2cloud we split the builds with two different app ids, and a different app title to make it easy to tell them apart. Because the app id is different it means you can have both builds on your device at the same time, and the development one wont overwrite the AppStore one, and vice versa.
Unit Tests are a good way to ensure things don’t break while coding. In Xcode by default they are run manually. Because it’s manual you may forget to run them, or a new person to the project may not know about them. You can set Xcode up to run them automatically every time you build your app, which ensures nothing will go unnoticed.
Here’s how to do that.