If your iPhone or iPad app embeds UIWebViews or makes HTTP requests directly with NSURLConnection, it’s important to keep an eye on memory utilization by running it through the profiler occasionally. Web requests can use a lot of memory, and you may find the memory footprint grows and grows the more you use the app. […]
Most code samples that Apple provides for initializing a view controller look something like this: MyController *myController = [[MyController alloc] initWithNibName:@"MyView" bundle:nil]; This always felt like a strange pattern to me. And as Ole Begemann recently pointed out, it’s poor encapsulation. Why does the caller specify which .xib file some other controller should use? Isn’t […]
If you use additional files or libraries during development like HockeyKit or TestFlight you’ll want to exclude those in your production app store builds. Likewise, if you have an iPad and iPhone app that share the same Xcode project but are published under separate app IDs, this technique is handy for excluding iPad assets from […]
We work on a couple of projects that require specific changes to test a particular configuration, for example to test against a local server. We generally put this kind of configuration into a plist file and create a target that builds using that plist. Sometimes, however, that’s not convenient–for example, there may be several different […]
I previously posted why Xcode 4’s symbolication is broken, along with a patched script that fixes it. As of Xcode 4.1, Apple has fixed the problems in the symbolicatecrash script, though I’ve found that it still often does not symbolicate correctly. Here are the most common problems (and solutions) I’ve come across:
After a few months in the app store and lots of great feedback, we’re excited to announce that Verbally 2.0 is available, including an in-app purchase to unlock Verbally Premium. Designed for people who use Verbally as an everyday communication aid, Verbally Premium includes several useful improvements.