Ксамарин.УСВН.dll использование рекламного идентификатора (IDFA)


Мы хотим представить нашу Xamarin заявку на пересмотр для Apple Appstore и в процессе представления задается следующий вопрос:

Использует ли это приложение рекламный идентификатор (IDFA)? То Рекламный идентификатор (IDFA) - это уникальный идентификатор для каждого устройства iOS и это единственный способ предложить таргетированную рекламу. Пользователи могут ограничить рекламу таргетинг на их iOS-устройстве.

Он также дает очень страшное предупреждение красным цветом:

Обеспечить что вы выбрали правильный ответ для рекламного идентификатора (Рекламодателя) использования. Если ваше приложение содержит IDFA и вы выбрали нет, то двоичный файл будет окончательно отклонен, и вам придется представить другой двоичный код.

Вот скриншот вопроса:

Введите описание изображения здесь

Я не был уверен, как ответить на этот вопрос, потому что наше приложение не обслуживает рекламу вообще, но я не был уверен, что какие-либо компоненты, которые мы используем, используют IDFA, и учитывая страшные предупреждения я не хотел рисковать.

Я погуглил некоторую информацию об этом вопросе и нашел эту полезную статью, в которой объяснялось, что нужно искать в коде, чтобы убедиться, что вы не используете IDFA. Вот соответствующее содержание:

Apple посоветовала издателю проверить код, в том числе сторонний библиотеки, чтобы удалить любые случаи следующего:

Класс: ASIdentifierManager селектор: advertisingIdentifier основа: вирусом.структуры

Поэтому я сделал следующий поиск grep в своем проекте:

grep -lr  "ASIdentifierManager" *
Этот поиск вернул результат, говорящий, что ASIdentifierManager был найден как в 32-битной, так и в 64-битной версиях Xamarin.iOS.dll. Так что я прав, предполагая, что для меня было бы небезопасно ответить "Нет" на вопрос, потому что Xamarin.iOS использует ASIdentifierManager. Было бы целесообразно ответить " Да " на этот вопрос, даже если наше приложение не обслуживает рекламу? Или есть какой-то способ ... скомпилировать приложение так, чтобы на ASIdentifierManager не было ссылок в Xamarin.IOS.dll?
1 2

1 ответ:

Я думаю, что вы можете ответить "нет", если ваше приложение не использует API ad.

У меня есть два приложения Xamarin в app store, и я всегда отвечал "нет" и еще не был отклонен. Я считаю, что причина в том, что, хотя API библиотеки Xamarin ссылается на API ad, поскольку приложения на самом деле не вызывают его, они в порядке и не считаются использующими IDFA.