I\'m submitting ios game to app store.
xcode gives me error Improper advertising identifier [IDFA] usage. Your app contains the Advertising Identifier [IDFA] API bu
You have to check "Yes" on the Prepare for Upload page:
But when you checked "No", you are stuck with this new version on iTunes Connect and cannot reenter the Prepare for Upload page or delete your new version.
At the moment it seems like your app is locked forever on the old version when this error occurs. Apple has to fix this!
If the issue is only related to google analytics SDK for iOS, you can upgrade it: the new version remove dependencies from AdSupport Framework, and hence from IDFA.
You can upload any application with the same bundleID. When you've done uploading, you can reject binary and next time you change status to Ready to Upload, don't forget check [IDFA].
This worked for me right now.
by the way, enabling this option does not help us
I was also facing this warning while validating app with iTunes connect and I was using FacebookSDK.framework which was downloaded from Ref Link. In FBUtility.m I have commented below code and removed Adsupport.Frmaework
+ (NSString *)advertiserID {
NSString *advertiserID = nil;
Class ASIdentifierManagerClass = [FBDynamicFrameworkLoader loadClass:@"ASIdentifierManager" withFramework:@"AdSupport"];
if ([ASIdentifierManagerClass class]) {
ASIdentifierManager *manager = [ASIdentifierManagerClass sharedManager];
advertiserID = [[manager advertisingIdentifier] UUIDString];
}
return advertiserID;
} to
+ (NSString *)advertiserID {
return @"";
}
and changed another function in same class FBUtility.m
+ (FBAdvertisingTrackingStatus)advertisingTrackingStatus {
if ([FBSettings restrictedTreatment] == FBRestrictedTreatmentYES) {
return AdvertisingTrackingDisallowed;
}
FBAdvertisingTrackingStatus status = AdvertisingTrackingUnspecified;
Class ASIdentifierManagerClass = [FBDynamicFrameworkLoader loadClass:@"ASIdentifierManager" withFramework:@"AdSupport"];
if ([ASIdentifierManagerClass class]) {
ASIdentifierManager *manager = [ASIdentifierManagerClass sharedManager];
if (manager) {
status = [manager isAdvertisingTrackingEnabled] ? AdvertisingTrackingAllowed : AdvertisingTrackingDisallowed;
}
}
return status;
}
to
+ (FBAdvertisingTrackingStatus)advertisingTrackingStatus {
FBAdvertisingTrackingStatus status =AdvertisingTrackingUnspecified;
return status;
}
I have removed that FacebookSDK.framework and downloaded Facebook framework from Ref Link . I have resolve this warning by using this way and I have uploaded app successfully.
And also see this stack question Link to avoid rejection, find and remove unwanted framework.
I had the same problem and I resolved uploading the app, despite the IDFA warning. Then, the IPA is rejected and you can start over, with "Prepare for Upload" page enabled. Make sure to check "Yes" in the section "Advertising Identifier" section of the page "Prepare for Upload".