-
Notifications
You must be signed in to change notification settings - Fork 47
Open
Labels
Description
iOS11开发新特性之实用小tips
DeviceCheck
DeviceCheck 允许你通过你的服务器与 Apple 服务器通讯,并为单个设备设置两个 bit 的数据。
在设备上用 DeviceCheck API 生成一个 2字节的 token (00, 01,10,11),然后将这个 token 发给自己的服务器,再由自己的服务器与 Apple 的 API 进行通讯,来更新或者查询该设备的值。这两字节 的数据用来追踪用户。比如。借助两个自己的数据,你可以得知用户究竟使用了该 App 多久。
该 API 可以成为:反欺诈领域:
- 试用7天
- Uber、滴滴司机被封号后,防止重新注册账号接单
- 该用户是否已经领取过首次注册红包
- APP防多开
因为传输的是 flag 级别的数据,并不会定位到该设备的使用者,所以相对安全。
但是对于购买了二手手机的使用场景,可能会出现一些边界情况,这个在业务中也需要考虑进去。
Reference:
APP 删除后 keychain 不会被清理
版本 | 事件 | 说明 |
---|---|---|
iOS 10.3 beta 1-5版本 | 保存在keychain中的App相关的数据,会随着应用的删除而被清除,重新安装App后将无法再从keychain中获取应用相关的数据。而10.3之前删除App并不会清理keychain中的对应数据。如果希望App在重新安装后,仍然可以获取到之前的一些数据,则依赖于keychain的方案将变得不可靠。不过,如果数据是在多个App间共享,则只有当所有相关的App都被删除后,才会删除keychain中的这些共享数据。 | |
10.3 beta 6 版本、10.3正式版、iOS11 | 恢复到之前的状态,从新安装可以访问到以前保存的数据了。 | iOS 10.3 beta 3 doesn't persist data of KeychainItem |
Metadata
Metadata
Assignees
Labels
Projects
Milestone
Relationships
Development
Select code repository
Activity
wellcheng commentedon Sep 23, 2017
keychain would't,意味着 UDID 那一套还可以继续用吧
ChenYilong commentedon Jan 18, 2018
UDID 一直是可以用的,跟keychain没有关联
Args commentedon Jul 11, 2018
@ChenYilong UDID不是早就不能用了吗?不是说这个不让获取吗
chaoxcheng commentedon Sep 27, 2018
应该指得是UUID........