Recent Posts
Getting information about your users – using Localytics in your app You’ve been working on your new app for months.  You have created your beta build and send the app out to your army of beta testers.  Now that you have people playing your app how do you know how they are interacting with it?  You could spend money and do focus group testing – gather a bunch of people at one place and actually look over their shoulder while they play.  Seems kind of intrusive to me, but you need ... Read Full Article
Implementing ads in your iOS Application In iOS 4.0 Apple introduced the iAd framework, making it possible for iOS developers to include ads in their apps, and thereby earning revenue as the app users view or interact with the ads. But iAd isn’t available in all countries. At this time the iAd network is only available in: The U.S., U.K., France, Germany, Italy, Spain and Japan. If your primary customer base isn’t in one of the mentioned countries, don’t worry. There’s a lot of alternative ad-frameworks ... Read Full Article
CoreBluetooth, Low-Energy connector framework for iOS5 As part of new iOS5 Apple introduces COreBluetooth a brand new framework for Low-Energy devices (aka LE), this framework has no documentation by now but we can discover how to use it with bluetooth devices. According to this Apple also has the Made-For-iPhone program that allows companies to build new peripherals for the iPhone (http://developer.apple.com/programs/mfi/). We can figure out this new framework because we have an example of CoreBluetooth for Mac (http://bit.ly/z7BMB5). CoreBluetooth conforms CBCentralManagerDelegate and CBPeripheralDelegate protocols, first one ... Read Full Article
iOS: Opening doors effect after an app launches There are a number of apps in the App Store that launch with a set of closed doors, these are then opened to present the actual UI underneath it. I had to create this effect for an app I wrote for a client http://itunes.com/apps/jkmuaythai I’d assumed when I started that this would be a relatively simple task, just take the initial default image, cut it in half and a simple bit of animation would move them out of the way. ... Read Full Article
Forward geocoding for location in previous iOS5 devices Forward geocoding in iOS5 is pretty simple, for early stages of iOS (by now <iOS5) we usually use MKReverseGeoder class. But in this article we would like to focus about the idea to get addresses or GPS coodinates from a CLLocation object or from a NSString for minor versions of iOS. To achieve our goal we will use categories. It is easy to think about a category like a kind of methods that we add to a system class, i.e: ... Read Full Article
IOKit: An Introduction IOKit is one of iOS’s private frameworks, and is used to access hardware and device capabilities. WARNING: since this is a private framework, if you submit an app to the App Store that links to this framework, it will be rejected. That said, let’s start by creating a new Xcode Project. You can pick any of the predefined templates. Once that is done, access the Project Settings, then select the Target. Go to Build Phases, then the Link Binary With ... Read Full Article
UIImage From URL – Simplified (Using Blocks) This post is a simplified version of the previous submitted post: A simple COCOA Asynchronous image loader class to use in your iPhone app This method uses blocks so will run on iOS4 onwards: void UIImageFromURL( NSURL * URL, void (^imageBlock)(UIImage * image), void (^errorBlock)(void) ) {     dispatch_async( dispatch_get_global_queue( DISPATCH_QUEUE_PRIORITY_DEFAULT, 0 ), ^(void)     {         NSData * data = [[[NSData alloc] initWithContentsOfURL:URL] autorelease];         UIImage * image = [[[UIImage alloc] ... Read Full Article
iOS 5 Bug! How to Track It Down A bug report is filed. It has these ominous words: iOS 5 bug. Dun-dun-duuun. What do you do? Twice now, this has happened to me at work. Here’s a technique I’ve used to find and fix the problems. It’s served me well! First, fire up Xcode 4 and see if you can reproduce the iOS 5 bug in the iPhone 5.0 Simulator (or the iPad 5.0 Simulator, depending on your app). If you can get it to happen in the ... Read Full Article