IOS Appliaction rejected by App store because of using adsupport.framework

Hello,

I submitted my ios game to App atore but it got rejected because of following reason. I used GoogleMobileAdsSdkiOS-6.10.0.

We found your app uses the iOS Advertising Identifier but does not include ad functionality. This does not comply with the terms of the iOS Developer Program License Agreement, as required by the App Store Review Guidelines.

Specifically, section 3.3.12 of the iOS Developer Program License Agreement states:

“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.”

Note: iAd does 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, 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 ads in your app

If your app does not serve ads, please check your code - including any third-party libraries - to remove any instances of:

class: ASIdentifierManager
selector: advertisingIdentifier
framework: AdSupport.framework

If you are planning to incorporate ads in a future version, please remove the Advertising Identifier from your app until you have included ad functionality.

To help locate the Advertising Identifier, use the “nm” tool. For information on the “nm” tool, please see the nm man page.

If you do not have access to the libraries’ source, you may be able to search the compiled binary using the “strings” or “otool” command line tools. The “strings” tool lists the methods that the library calls, and “otool -ov” will list the Objective-C class structures and their defined methods. These techniques can help you narrow down where the problematic code resides.

Please someone help me to solve this.

One of the library you use in your app is using the iOS Advertising Identifier while you do not show ads, which is forbidden. Probably GoogleMobileAdsSdkiOS-6.10.0, as you said.

If you are really not using ads, you should check for updated libraries that have been changed to accomodate this new Apple requirement. All libraries I know about did that a long time ago.

If you are actually using ads, it means Apple’s reviewer didn’t see those ads. Change your app so that they see ads, and you should be fine.

Note: it is absolutely not related to cocos2d-x.

Thanks for your reply because of some issue my game doesn’t display the ads and now i solve the issue and submitted again to ios store thanks again.

Hi,
For those who doesn’t use Ads and still getting error then i would suggest look into the “Frameworks” folder in the left side panel of Xcode. You might find some unreferenced libraries which you might have used and removed lately. When you remove it from main project settings, it doesn’t get removed from this. I fixed mine as i wasn’t using Ads at all and also couldn’t find anything using grep command in terminal.

Thanks virgilcwylie! I’ve had this issue before and couldn’t figure out why Apple kept finding ads. I ended up re-creating the project, but I suspect checking my frameworks folder would have fixed it!

You are welcome.