1. The message from Apple

Information Needed

We began the review of your app but are still unable to continue because we need additional information about your app. At your earliest convenience, please review the following questions and provide as much detailed information as you can.

- Does this app detect startMonitoringForRegion:, startRangingBeaconsInRegion:, or both?
- What is the user experience when the app detects the presence of a beacon?
- What features in this app use background location?
- If this app uses 3rd party SDKs for iBeacons, please provide links to their documentation showing that background location is required for it to function.

Please reply to this message in the Resolution Center with the requested information.

2. Step 1 - Necessary verifications

Before you answer Apple's questions, you need to make verifications in your backend, in the menu Add-ons > Add-ons > Management:

- Is the Geofence add-on enabled?
- Is the Beacon add-on enabled?
- Are they both enabled?  

Then, verify if they are actually used in your app, in the menu Users > GeoAlert:

- Have you got at least 1 Geofence currently in use? (With a green badge)
> YES: It's fine.
> NO, you must delete the Geofence add-on (and not just disable it).  

- Have you got at last 1 Beacon currently in use? (With a green badge)
> YES: It's fine
> NO, you must delete the Beacon add-on (and not just disable it).  

The important information here is that any Geofence or Beacon add-on enabled must be in use at the moment of the submission, otherwise Apple will detect an error and may reject the app. 

3. Answering to Apple

You only need to answer if the settings are correct in your backend, meaning:  

- If your Geofence add-on is enabled, you have at least 1 Geofence in use with a green badge.
- If the Beacon add-on is enabled, you have at least 1 Beacon in use with a green badge.

If at least one of the add-ons was not correctly set, move on to next paragraph and follow the instructions.  

- Does this app detect startMonitoringForRegion:, startRangingBeaconsInRegion:, or both?
> The app detects startMonitoringForRegion with the Geofence add-on.  
> The app detects startRangingBeaconsInRegion with the Beacon add-on.  
> If both add-ons are enabled in your app, then the app detects both.

- What is the user experience when the app detects the presence of a beacon?
You only need to answer this question if the Beacon add-on is enabled and correctly set in your app.
> If the Beacon add-on is enabled in your app , you can tell Apple that the users who have enabled the notifications in the app (which is optional) will receive a notification when entering the range of the Beacon.
> If the Beacon add-on is not enabled in your app, just answer Apple that this app doesn't use beacons, only geotargetted notifications for users who have enabled them (which is optional).  

- What features in this app use background location?
> This depends on which add-on is enabled and correctly set in the app.
If your app uses Geofences, tell Apple that the app uses geotargetted notifications for users who have enabled the notifications in the app(which is optional).
If your app uses Beacons, tell Apple that the app uses beacon-related notifications for users who have enabled the notifications in the app (which is optional).  
If your app uses both, give both answers.  

- If this app uses 3rd party SDKs for iBeacons, please provide links to their documentation showing that background location is required for it to function.
> If your app only uses Geofences, just answer Apple that the app doesn't use beacons, only geotargetted notifications for users who have enabled the notifications (which is optional). The background mode is also optional, and serves for users who want to receive the notifications even when the app is closed.  
> If your app uses Beacons, answer Apple that it doesn't use a 3rd party SDK but custom code. When entering the range of a beacon, users who have enabled the notifications (which is optional) will receive one. The background mode is optional, and serves for users who want to receive the notifications even when the app is closed.  

You also need to add the following battery use disclaimer in your Application Description:"Continued use of GPS running in the background can dramatically decrease battery life." (translated in your app language if it is not English).  

After that, you can resubmit the same .ipa file directly on iTunes Connect, you don't need to rebuild the app and upload a new one. 

4. What to do if the Beacon or Geofence was not correctly set

The first thing to do is unlock your backend. You can choose the option "binary rejected" even though the app is metadata rejected in reality (the choice "metadata rejected" will tell you to contact the support, so you will save some time by choosing "binary rejected" then "yes").

Then, delete one or both add-ons that are not currently in use from the menu Add-ons > Add-ons > Management (remember that disabling them is not sufficient in this case).  

After that, you will have to build a new version of the app and submit the new .ipa file to Apple in replacement of this one. Make sure you select the newest .ipa with today's date when you choose it from the list under the Build menu in iTunes Connect. 

Did this answer your question?