我有一个可以在设备之间同步数据的应用程序。至关重要的是,我们必须始终知道用户正在使用的设备,以便我们能够正确同步。我们已经实现了OpenUDID,但注意到一些测试用户在安装和运行新版本时获得新的openUDID时会遇到一些奇怪的问题。

一些测试团队在ios5和某些ios6上,我们正在尝试缩小导致生成新的openUDID的条件。

大胆思考-可能是这些情况中的任何一种。
在安装新应用程序(我们应用程序的版本)时,ios5或6在这里会产生差异吗?
使用testflight为我们安装新版本。该流程是否导致新的oUDID
我们更新版本时手机上的其他应用程序吗?
硬重启电话(电源+家用)15秒钟
应用程序崩溃,请先卸载再重新安装

提前任何帮助都会很棒!

最佳答案

OpenUDID使用UIPasteboard方法存储唯一值,但是存在一些限制。当手机关闭电源并重新启动时,它不应重置,但我认为安装iOS6很有可能会重置粘贴板存储。

如果您能够找到一个始终没有相同值的用户,即使他们没有更新到新的操作系统版本,则可能是另一种情况,即另一个应用弄乱了该值,或者iOS6更有可能重置或重置该用户,使UIPasteboard过期。
您可以考虑制作自己的代码以保存到粘贴板。 OpenUDID的好处是其他网络可以共享相同的ID用于跨应用跟踪,因此,如果您不打算为此目的使用它,则可以考虑实施自己的解决方案。我认为不可能仅将iOS6作为目标,但如果可以的话,您可以使用他们的新组织唯一标识符,它可能更加可靠。

10-08 06:04