我的应用使用iOS(iPhone)上CMAltimeter的气压数据.一直都很好.但在安装iOS 17.4后,它停止工作.其他使用气压数据的应用程序也停止工作.因此,这似乎是iOS 17.4中的一个主要故障.
以下是用于测试这一点的(SWIFT)代码.此代码过go 在早期版本的iOS中运行良好,但在17.4中,authorizationStatus()
返回.restricted
,调用处理程序时出现错误:
The operation couldn’t be completed. (CMErrorDomain error 105.)
这一切都表明存在一些身份验证失败.我已经在Apple上记录了错误报告.
但我想知道其他人是否也经历过同样的经历,是否有一些变通办法/解决方案,使气压数据再次可用.
if CMAltimeter.isRelativeAltitudeAvailable() {
status = CMAltimeter.authorizationStatus()
self.altimeter.startRelativeAltitudeUpdates(to: OperationQueue.main) { (data, _error) in
DispatchQueue.main.async {
error = _error != nil ? _error!.localizedDescription : "<nil>"
print(error)
pressure = data != nil ? String(format: "%f", data!.pressure.doubleValue) : ""
}
}
}
PS: Core Motion的文档(CMAltimeter
是其中的一部分)指出,需要为所有Core Motion服务定义NSMotionUsageDescription
.info.plist
属性.我有这个财产,但它似乎没有什么不同.