Looking for a solution to uniquely identify a device on iOS. AdSupport

If you read this apple rejection letter:

Apple rejected iOS app due to " iOS Advertising Identifier" with Device Plugin or PushNotification Plugin

Apple respond:

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