I recently was rejected by apple store because my app "included code that accesses the Advertising Identifier, but they dont see ads served in the app. My app uses iAd, and so it has been my assertion that I am indeed showing ads, and so was confused by Apple’s statements. Here is exactly what they say:
_After continuing our review of your app, we have verified that your app contains code that is accessing the Advertising Identifier, however, we did not see ads served in your app. As stated in section 3.3.12 of the iOS Developer Program License Agreement, an app must serve ads in order to use the Advertising Identifier:
“You and Your Applications (and any third party with whom you have contracted to serve advertising) may use the Advertising Identifier, and any information obtained through the use of the Advertising Identifier, only for the purpose of serving advertising. If a user resets the Advertising Identifier, then You agree not to combine, correlate, link or otherwise associate, either directly or indirectly, the prior Advertising Identifier and any derived information with the reset Advertising Identifier.”
We have seen this behavior in apps that include third-party libraries. These libraries are often analytics engines, ad engines, or other types of third-party services.
We require that you locate and remove this code prior to resubmitting, and recommend that you use the “nm” tool or the command line tools “strings” or “otool -ov” to find the following entities:
- class: ASIdentifierManager
- selector: advertisingIdentifier
- framework: AdSupport.framework
If you are unable to locate these entities, you may wish to work with an Apple Developer Technical Supportengineer.
If you believe your app is serving ads, please:
-
ensure that you have tested your app on a device, not just the simulator, and that you have removed previous versions of your app prior to testing
-
provide us the steps to locate ads in your app_
So I am wondering what is wrong with the app at this point. I suggest maybe there is a different problem possibly at Apple, and got this reply:
_PLA 3.3.12
Specifically, we ask that you please note that iAds do not use the AdSupport framework, ASIdentifierManager, or the Advertising Identifier. Therefore, they are not required for iAd implementations and should not be included in your app for iAd support.
If your app is serving ads other than iAds, we ask that you please:
-
Ensure that you have tested your app on a device, not just the simulator, and that you have removed all previous versions of your app prior to testing
-
Provide us the steps to locate these ads in your app
Otherwise, if your app does not serve ads or is only using the iAds, please check your code - including any third-party libraries - to remove any instances of:
class: ASIdentifierManager
selector: advertisingIdentifier
framework: AdSupport.framework
We look forward to receiving your revised app and continuing our review._
So Apple thinks I am including these API. So my question for CORONA is this. Does the build process include the aforementioned API even if I am only serving up iAds? If this is the case, are you aware Apple rejects for the reasons given above - and do you know a workaround?
Thanks!