如何解决“init(proximityUUID:identifier:)”在iOS 13.0 for iBeacon 中已弃用

Kit*_*det 3 ios swift ios13

我想在我的 iOS 应用程序上接收 iBeacon 的 RSSI,此代码可以在 iOS12 上运行。现在我已更新到 iOS 13,此代码无法运行。

并提醒

'init(proximityUUID:identifier:)' 在 iOS 13.0 中被弃用 'startRangingBeacons(in:)' 在 iOS 13.0 中被弃用 'stopRangingBeacons(in:)' 在 iOS 13.0 中被弃用

如何解决这个问题?

Scr*_*ble 5

如果您查看您正在使用的方法的文档,它会告诉您它在 iOS 13 中已被弃用,并且还会告诉您改用什么

如果链接断开,这是替代选项:

init(uuid:major:minor:identifier:)
Run Code Online (Sandbox Code Playgroud)

检查其他方法的文档,它会告诉您使用哪些替代方法。

现在.. 将您的应用程序配置为在基于 iOS 版本的方法之间切换,您可以使用 @available 检查..

if #available(iOS 13, *) {
    // use the shiny new one
} else {
    // use the old one
} 
Run Code Online (Sandbox Code Playgroud)