What you will learn

This article synthesizes what you need to check before you publish an iOS application integrating the Herow SDK.

Logs

Be sure the DEBUG log mode is not activated when you publish your application, this mean be sure that the following code is not called:

    GlobalLogger.shared.startDebug()

Xcodeproj and Capabilities

Our SDK does not need any specific iOS 'capabilities' to run properly, and in particular, it does not require any location background mode capability or BLE accessories background mode capability (unless you need to perform background long beacon ranging).

If these capabilities are not needed by your application but enabled anyway, your application will be rejected by the iOS App Review team.

iTunes Connect

Complete the "App Review Information" section

Include a demonstration video

To publish any application, you must provide the iOS App Review Team with a video that shows the various possible interactions between your application and zones.

You have to provide the link to this video with an explanation in the App Review Application section of the iTunes Connect publication page.

Provide a beacon or a geofence zone for tests

You must provide a UUID / Major / Minor of a beacon or a geofence zone in the App Review Application section, to allow the iOS App Review Team to perform live tests on your application.

Illustration

Below is a sample text that you can use to provide additional comments regarding your application submittal, in the note zone of your App Review Application section.

"Dear iOS App Review team,

Please note that our application is made to interact with beacons (CLBeaconRegion) and geofence zones (CLCircularRegion). The application is using geofences (CLCircularRegion) with location update in background to give information about relevant point of interests when no beacons are available. You may discover all of the possible interactions between our application and the beacons/geofence zones in the following video: [video link]

Declare your application using the advertisingIdentifier

Our SDK analytics library uses the advertisingIdentifier. Do not forget to declare it when you publish your application.