Apple 的 iOS 和 iPadOS 27.3 测试版发行说明记录了适用于在 iPhone 和 iPad 上运行的应用的 SDK 更新。该 SDK 随 Xcode 27.3 一同提供,包含对 Live Caller ID Lookup、NEURLFilter 和 StoreKit 的更改。
Apple 随 Xcode 27.3 提供 iOS 和 iPadOS 27.3 SDK
iOS 和 iPadOS 27.3 SDK 支持为运行 iOS 和 iPadOS 27.3 测试版的 iPhone 和 iPad 开发应用。该 SDK 随 Xcode 27.3 一同提供;说明建议开发者参阅 Xcode 27.3 发行说明,了解兼容性要求。
Live Caller ID Lookup 更改评估密钥处理方式
系统现在会保留一组已上传到 Live Caller ID Lookup 服务但尚未使用的评估密钥。当预先上传的密钥用完时,系统会自动改为在查询中内联发送新的评估密钥。如果查询中包含评估密钥,服务必须直接使用该密钥,而不是根据用户标识符查找密钥。
Live Caller ID Lookup 现在要求其 PIR 配置中的服务分片数必须是 2 的幂,例如 256、512、1024 或 2048。系统会拒绝分片数不是 2 的幂的配置。已使用 2 的幂分片数的配置可在早期版本中正常工作,无需更改。
NEURLFilter 更新 PIR 和 Privacy Pass 配置
系统现在会保留已上传到 NEURLFilter PIR 服务但尚未使用的评估密钥。当预先上传的密钥用完时,系统会自动在查询中内联发送新的评估密钥。收到包含评估密钥的查询时,服务必须直接使用该密钥,而不是根据用户标识符查找密钥。
NEURLFilter 不再支持用户等级。系统不再调用服务的 /token-key-for-user-token 端点,而是改用 Privacy Pass 令牌发行方目录中的第一个有效公钥。
NEURLFilter 服务的 PIR 配置最多可包含 65,536 个分片,且分片数必须是 2 的幂,例如 256、512、1024 或 2048。系统会拒绝超出上限或分片数不是 2 的幂的配置。已满足这两项限制的配置可在早期版本中正常工作,无需更改。
现在必须在应用的 Info.plist 中静态声明 NEURLFilter 服务 URL 和 Privacy Pass 发行方 URL;仅在运行时提供这些 URL 的做法已弃用。开发者必须在应用的 Info.plist(而不是 URL 过滤器扩展的 Info.plist)中添加 NSPIRConfiguration 字典,并包含 PIRServerURL 和 PrivacyPassIssuerURL 键。PIRServerURL 对应 pirServerURL;PrivacyPassIssuerURL 对应 pirPrivacyPassIssuerURL,如果未设置,则默认为 PIRServerURL。每个值都只能包含服务器的主机名。如果这些值也在运行时设置,则必须与 Info.plist 中的值完全一致,否则系统会因配置无效而无法启动过滤器。
StoreKit 新增多席位订阅
多席位订阅允许客户为自动续订订阅购买多个席位,并邀请其他人加入。开发者可以通过 Product 和 AdvancedCommerceProduct 上新增的 supportsMultiSeatPurchase 属性,检查订阅是否支持购买多个席位。该属性反映在 App Store Connect 中配置的设置。
说明还指出,苹果修复了一个问题:开发者在沙盒环境中测试“购买前询问”(Ask to Buy)时,如果登录的 iCloud 账户属于“家人共享”群组,可能无法查看或批准沙盒中的“购买前询问”请求。
Xcode 中的 StoreKit 测试记录修复内容和已知问题
苹果修复了 Xcode 中 StoreKit 测试的一个问题:对属于某个订阅套餐的订阅进行 App 内购买时,系统错误地允许用户从套餐中解除捆绑,而不是抛出错误。
一项已知问题指出,使用 SKTestSession 的应用首次启动时,某些 StoreKit Test API 调用可能会挂起。文档建议的解决方法是在方案的运行选项中设置 StoreKit 配置文件,然后重新运行测试。
iOS 和 iPadOS 27.3 测试版发行说明详述开发者相关更改
- iOS 和 iPadOS 27.3 SDK 支持为运行 iOS 和 iPadOS 27.3 测试版的 iPhone 和 iPad 开发应用,并随 Xcode 27.3 一同提供。
- Live Caller ID Lookup 要求 PIR 配置中的分片数必须是 2 的幂,例如 256、512、1024 或 2048。
- NEURLFilter 将 PIR 配置的分片数限制为最多 65,536 个,并要求分片数为 2 的幂。
- NEURLFilter 要求在应用的 Info.plist 中的 NSPIRConfiguration 字典内设置 PIRServerURL 和 PrivacyPassIssuerURL。
- 多席位订阅支持通过 Product 和 AdvancedCommerceProduct 上的 supportsMultiSeatPurchase 属性提供。
- 对于首次启动 SKTestSession 时出现的问题,Xcode 中 StoreKit 测试的解决方法是在方案的运行选项中设置 StoreKit 配置文件,然后重新运行测试。
常见问题
iOS 和 iPadOS 27.3 对 Live Caller ID Lookup 做了哪些更改?
系统会保留已上传到服务但尚未使用的评估密钥,并在这些密钥用完时于查询中内联发送新的密钥。服务必须直接使用查询中包含的评估密钥。PIR 配置中的分片数必须是 2 的幂,例如 256、512、1024 或 2048。
NEURLFilter 的 PIR 配置有哪些要求?
NEURLFilter 最多允许 65,536 个分片,并要求分片数为 2 的幂。服务 URL 和 Privacy Pass 发行方 URL 必须在应用的 Info.plist 中的 NSPIRConfiguration 字典内声明,并使用 PIRServerURL 和 PrivacyPassIssuerURL 键。
StoreKit 如何支持多席位订阅?
多席位订阅允许客户为自动续订订阅购买多个席位,并邀请其他人加入。开发者可以通过 Product 和 AdvancedCommerceProduct 上的 supportsMultiSeatPurchase 属性检查是否支持此功能。
免责声明:以上内容(如有图片或视频亦包括在内)均为平台用户上传并发布,本平台仅提供信息存储服务,对本页面内容所引致的错误、不确或遗漏,概不负任何法律责任,相关信息仅供参考。
本站尊重他人的知识产权、名誉权等法律法规所规定的合法权益!如网页中刊载的文章或图片涉及侵权,请提供相关的权利证明和身份证明发送邮件到qklwk88@163.com,本站相关工作人员将会进行核查处理回复