rpe*_*ayr 6 certificate ios provisioning-profile testflight
我希望能够从网页中的iOS设备读取设备UUID.我知道使用JavaScript是不可能出现明显的安全问题,但我每天都使用testflight,我可以看到他们确实可以访问设备uuid.
看起来他们通过在注册设备时在iPhone上安装一种配置文件来实现这一目的.
我应该使用什么样的证书/配置文件来做类似的事情?
然后,我就可以将设备UUID链接到网页会话.我知道这需要用户的确认,这对我来说完全没问题..我并没有试图找到解决我们无法从代码访问设备uuid这一事实的方法,我问这是因为我知道testflight正在这样做
好的!我想我现在明白了。
你是对的,UDID 当然不是由浏览器发送的。我也确信它是由 Safari 的安全缺陷或类似的东西引起的,因为 testflightapp 添加了一个类似于 UDID 的唯一 ID,但事实并非如此。
他们实际上做的是生成一个新的DeviceID(与UDID无关)。然后,为了注册设备,他们会生成专门为此 DeviceID 制作的配置文件,其中包含注册有效负载,该负载根据包含 testflightapp 生成的此 DeviceID 的 URL 注册设备。
在此注册过程中,配置文件要求设备发送 UDID(以及其他数据)。这是个人资料要求的信息:
<array>
<string>UDID</string>
<string>IMEI</string>
<string>ICCID</string>
<string>VERSION</string>
<string>PRODUCT</string>
<string>MODEL</string>
<string>DEVICE_NAME</string>
</array>
Run Code Online (Sandbox Code Playgroud)
因此,当设备请求 testflightapp 服务器注册该设备时,他们能够将配置文件中存储的 DeviceID 与当前设备的实际 UDID 相关联。这就是他们在浏览器中显示该过程已完成并保留 UDID 的方式。
但是,这并没有完成答案,因为我(还)没有解决他们实际上如何将此 Web 会话与 UDID 关联起来,即使会话失效并且 DeviceID 变得孤立。答案似乎是(尚未确认,但 99% 确定!)注册过程允许定义要插入到 Springboard 菜单中的 WebClip。此 WebClip 在 URL 中写入了设备的 UDID,因此每当您通过此 WebClip 进入 testflight 应用程序时,您都会在会话中刷新您的 UDID 号,因此会话是否终止也没关系。
希望我的帖子现在能有所帮助!再次对上一篇不完整的错误信息表示歉意。
| 归档时间: |
|
| 查看次数: |
1266 次 |
| 最近记录: |