manager(_:didUpdate:)
Tells the delegate when a water submersion event occurs.
Declaration
func manager(_ manager: CMWaterSubmersionManager, didUpdate event: CMWaterSubmersionEvent)Parameters
- manager:
The manager for water submersion data.
- event:
An event indicating that the submersion state has changed.
Discussion
Implement this method to respond to changes in the device’s submersion state.
nonisolated func manager(_ manager: CMWaterSubmersionManager, didUpdate event: CMWaterSubmersionEvent) {
let submerged: Bool?
switch event.state {
case .unknown:
logger.info("*** Received an unknown event ***")
submerged = nil
case .notSubmerged:
logger.info("*** Not Submerged Event ***")
submerged = false
case .submerged:
logger.info("*** Submerged Event ***")
submerged = true
@unknown default:
fatalError("*** unknown event received: \(event.state) ***")
}
Task {
await myAdd(event: event)
if let submerged {
await mySet(submerged: submerged)
}
}
}