We have cleaned up the callbacks in the iOS SDK in the 1.0.5 release. We are now exposing the SBSDKBeaconAction directly which contains all the necessary field you will need for your integration.
The change will also imply, that the integration needs to take care of the application state. If your app is in the background, show an UILocalNotification, when you app is open, you can choose to show custom UI. This sample shows an easy UIAlertView:
The short version:
Your delegate receives the action in beaconManager:didResolveAction
when the app is in the foreground, we show our in-app UI immediately.
when the app is in the background, we can only show a UILocalNotification
when the action has a delay, schedule a notification
application:didReceiveLocalNotification receives the local notification and the attached data when the app is opened. Get the metadata off the notification and show the same custom UI.
Please check the latest sample implementation in the SBSDKAppDelegate.m on github, here are the relevant methods: