3

我有一个 Beta 测试人员,在上一个 beta 测试周期后 4 个月,我向他发送了一个新版本的应用程序的第一个 beta 测试。当她说它无法加载时,我们检查了她的 UDID,它与我们 4 个月前使用的不同,所以我的配置显然不起作用。

她说这是以前使用的相同设备。

我还没有进一步探索她可能做了哪些升级,或者她(或者她的孩子?)是否越狱。

是否有任何 Apple 认可的行为会更改设备上的 UDID?

如果您越狱设备,您是否需要采取进一步措施(例如,使用类似 UDIDFaker 的代码安装一些东西)以更改 UDID?

谢谢!
亨利

4

3 回答 3

3

我没有找到任何关于 UDID 是否可以更改的官方消息。
但是文档虽然没有明确说明,但说明了以下内容(在UIDevice Class Reference中):

UDID 是由各种硬件标识符(如设备序列号)组成的哈希值。保证每个设备都是唯一的。UDID 独立于设备名称。对于使用 SIM(用户身份模块)卡的设备,UDID 独立于 SIM 卡。

基于此,我继续假设设备的 UDID 永远不会改变。

您可能会询问您的 Beta 测试人员,该设备是否由 Apple 维修,或者(更有可能)她是否在两者之间更换了设备。如果这台设备“修好了”,苹果只是换了新的也不是不可能,而她并没有意识到。

于 2011-03-02T21:25:04.597 回答
2

不,唯一设备 ID 将始终保持不变,并且属性是read-only,正如您提到的,除了越狱和欺骗 UDID 之外。

Apple 必须有一种方法来唯一地识别数百万台设备,所以这就是他们创建 UDID 的原因。

于 2011-03-02T21:25:07.397 回答
1

无法修改 UDID。例如,您可以为一个应用程序“更改”它,它被称为欺骗,但它不是永久性的 - 例如它对调试很有用(swizzling - 用自定义实现替换方法)。

于 2011-03-02T20:38:53.983 回答