3

最近,上传 apk 后,我在 Google 开发者控制台的发布前报告的安全选项卡中收到了安全警告。这是问题:

发送在 APK 中检测到的设备标识符(APK 列表)...您的应用正在使用设备标识符(IMEI、MAC 地址、构建序列号等)并将标识符数据发送到远程网络地址。此问题通常(但不仅限于)在使用过时的广告 SDK 的应用程序中发现。要停止收到此警告,请尝试更新或更改您的应用中可能使用设备标识符的任何 SDK 或代码。对于大多数用例而言,发送设备标识符并不是最佳做法,如果您将此标识符用于广告目的,这可能违反了 Google Play 政策,并可能影响您的应用在 Play 商店中的可见度。要获取有关您的应用如何使用标识符的建议,请了解唯一标识符最佳做法。

我在我的项目中使用 Appsflyer sdk 来注册用户事件、跟踪安装和卸载等,我也为此使用了最新的 sdk。当我删除此 sdk 时,安全问题不会出现在发布前报告中。当我联系 Appsflyer 支持团队时,他们提到不要使用通过他们的 API 调用发送 IMEI 和 Android Id 数据的功能,我一开始没有包括在内。并且也不包括 READ_PHONE_STATE 权限,我将其删除并再次上传到 Play 商店,这导致了安全问题。

他们还确保必须收集至少一个设备标识符,GAID、Android ID 或 IMEI,以便进行适当的归属。在他们较新的 SDK 版本中,GAID 或 Google AID 是自动收集的,不需要我进行任何特定操作。

这是安全警告的原因吗?

任何帮助表示赞赏。提前致谢。

4

1 回答 1

3

我联系了 AppsFlyer 的支持团队,他们解决了我的问题,解决方案基本上是删除 IMEI 的记忆,似乎默认启用的选项,这是通过放置:

AppsFlyerLib.getInstance().setCollectIMEI(false);

就在 MainActivity 的 OnCreate 中的 Appsflyer.startTracking 调用上方(或您在应用程序中放置 startTracking 调用的任何位置)

在我的例子中,我使用的是段集成,所以我把它放在这条线的上方:

Analytics.setSingletonInstance(analyticsBuilder.build());

希望这会对您有所帮助,否则我建议您联系支持团队,他们很快就回复了我

于 2018-01-25T13:24:32.423 回答