同一台设备上的 IBM MobileFirst 7.1.0 WL.Device.getID 更改

IBM MobileFirst 7.1.0 WL.Device.getID changes on the same device

mfp -v 7.1.0.00.20160401-2108
wladm -版本 7.1.0.00.20160323-1606

WL.Device.getId 有时 returns 在同一台设备上使用不同的 ID 重新安装应用程序或从应用商店更新。
它发生在 Android 和 iPhone.
它仅在应用程序重新安装(更新)或从调试切换到发布时发生。
安装后,ID 是永久性的。
我们使用 LDAP 服务器,其中 DeviceID 是登录值。因此,当 ID 更改时,我会看到来自同一设备的全新登录值。

这种行为的原因是什么?

背景资料:
MobileFirst SDK 为 android 生成的设备 ID 存储在 KeyStore 文件中,并存储在钥匙串文件中的 iOS 中。在应用程序 uninstallation/reinstallation/upgrade、最终用户更改设备安全设置或恢复出厂设置等情况下,这两种方法都不能 100% 保证保留原始存储值。

由于这些原因,不推荐使用 WL.Device.getId 值作为主要登录值的模式。

推荐的模式是使用唯一的用户身份,例如电子邮件或用户名。请注意,未来版本的 MFP 可能会停止支持 WL.Device.getId API 方法。