首页 文章

Xamarin.IOS.dll使用广告标识符(IDFA)

提问于
浏览
2

我们希望提交我们的 Xamarin 申请以供 Apple Appstore 审核,并在提交过程中询问以下问题:

此应用是否使用广告标识符(IDFA)?广告标识符(IDFA)是每个iOS设备的唯一ID,是提供定向广告的唯一方式 . 用户可以选择限制其iOS设备上的广告定位 .

它还以红色发出非常可怕的警告:

确保为广告标识符(IDFA)使用选择正确的答案 . 如果您的应用确实包含IDFA并且您选择否,则二进制文件将被永久拒绝,您必须提交不同的二进制文件 .

以下是问题的屏幕截图:

enter image description here

我不知道如何回答这个问题,因为我们的应用程序根本不提供广告,但我不确定我们使用的任何组件是否正在使用IDFA,并且考虑到我不想采取任何机会的可怕警告 .

我搜索了有关此问题的一些信息,并找到this useful article,其中解释了在您的代码中搜索的内容,以确保您不使用IDFA . 以下是相关内容:

Apple建议发布商检查代码,包括第三方库,以消除以下任何情况:class:ASIdentifierManager selector:advertisingIdentifier framework:AdSupport.framework

所以我在我的项目中进行了以下grep搜索:

grep -lr  "ASIdentifierManager" *

此搜索返回一个结果,表示在 Xamarin.iOS.dll 的32位和64位版本中都找到了 ASIdentifierManager .

因此,我认为对于问题回答"No"是不安全的,因为 Xamarin.iOS 正在使用 ASIdentifierManager . 即使我们的应用程序不提供广告,回答这个问题也是明智的吗?或者是否有某种方法来编译应用程序,以便在 Xamarin.IOS.dll 中未引用 ASIdentifierManager

1 回答

  • 2

    如果您的应用不使用广告API,我认为您可以回答“否” .

    我在应用程序商店中有两个Xamarin应用程序,我总是回答“否”并且还没有被拒绝 . 我相信原因是虽然Xamarin库API引用了广告API,因为应用程序实际上并没有调用它,但它们没有问题,也不算是使用IDFA .

相关问题