Using Apple’s App Review Process for Testing

Testing any piece of software is extremely important but if this software happens to be an iOS/Mac app, testing is crucial. Apple’s App Store Review Guidelines provide developers with some insight (some) on how they can avoid getting their app rejected. I say ‘some’ because its a living document that constantly changes. Quotes from the guidelines:

This document represents our best efforts to share how we review apps submitted to the App Store, and we hope it is a helpful guide as you develop and submit your apps. It is a living document that will evolve as we are presented with new apps and situations, and we’ll update it periodically to reflect these changes.

Read the rest of this entry »


Bring Users Back to your Application after they End the Call

Often times, developers want to allow their users to place calls from inside their applications. Although, Apple has provided a pretty neat function openURL: for doing that, but it has one disadvantage…rather than bringing the users back to the application, it takes the users to the default Phone application after they end the call. It can be frustrating to both the developers and the users; developers want to give uninterrupted use of their applications whereas users hate to have to close the Phone app and go back to what they were doing. If you are one of the afore mentioned developers, you are reading just the post. In this small pots, Im showing a way around this…as always, totally acceptable by Apple, no private APIs or hacks that may get your app rejected.

Read the rest of this entry »


Accessing iPhone Call History

Although there is no API in the SDK to access iPhone’s Call History, there is a read-only SQLite database that gives access to the call history. In this tutorial, we shall learn what is the name of this database; where is it stored; what is its schema; and finally how can we access it?

Read the rest of this entry »


Creating ‘Pulse’ style scrolling – Horizontally scrolling UITableView as a subview of UITableViewCell

‘Pulse’ is a free news reading application for iPhone, iPad, and Android by Alphonso Labs Inc. I was introduced to Pulse through an iTunes U lecture from Stanford University “10 Hacks to go from Idea to #1 App”. In that lecture, the developers have mentioned that they have used horizontal UITableViews to create the Interface. Intrigued as I was, I had to try it myself and you should also.

Read the rest of this entry »


Adding a UITableView as a subview of UITableViewCell using Interface Builder

Adding a UITableview as a subview of a UITableViewCell??? Yes, you read it correctly and I typed it correctly. No mistakes have been made here. It sounds strange but once the idea came to my mind I had to do try it out to see if it was possible. I searched online and couldn’t find any help so I decided to write a tutorial. Here it is:
Read the rest of this entry »


Are you sure you want to delete ‘Angry Birds’???

This morning I was cleaning up my iPad using iTunes. I started with deleting the iPhone apps that got installed in it by mistake during sync. So I selected those apps and hit the ‘Apply’ button to sync. Guess what the confirmation pop up said:

Being a developer myself, I was wondering did they actually put a separate ‘condition’ to alert users that they are about to delete Angry Birds???

If they did, way to go Angry Birds!!!


Making a Video (and Photo) Thumbnail Gallery using Three20 Framework

There is a huge number of tutorials on how to use three20 to create photo gallery but only very few on how to create photo gallery with thumbnails (they usually focus on creating galleries that start with scrollable photos.) And none at all on creating a video gallery. Therefore, I present this tutorial, which explains the method of creating a video gallery in detail. Starting from compiling three20 into a project, going through making a thumbnail gallery of photos and finally making a thumbnail gallery containing videos.

Read the rest of this entry »