如何解决在iOS 13.0中iBeacon中'init(proximityUUID:identifier:)'的弃用问题

3
我想在我的iOS应用程序中接收iBeacon的RSSI。这段代码可以在iOS 12上运行。现在我已经升级到iOS 13,这段代码无法运行,并提示以下警告:
'init(proximityUUID:identifier:)'在iOS 13.0中已弃用 'startRangingBeacons(in:)'在iOS 13.0中已弃用 'stopRangingBeacons(in:)'在iOS 13.0中已弃用
如何解决这个问题?
2个回答

5
如果您查看使用的方法的文档,它会告诉您该方法已在iOS 13中被弃用,并告诉您应该使用什么替代方法
如果链接失效,这是替代选项:
init(uuid:major:minor:identifier:)

查看文档中的其他方法,它会告诉你该使用哪些替代方法。

现在..为了配置你的应用程序以根据iOS版本在不同方法之间切换,你可以使用@available检查..

if #available(iOS 13, *) {
    // use the shiny new one
} else {
    // use the old one
} 

1
在阅读文档后,我将我的代码从原来的修改为:
let beaconRegion = CLBeaconRegion(proximityUUID: uuid, major: 123, minor: 456, identifier: "MyBeacon")

给:

let beaconRegion = CLBeaconRegion(uuid: uuid, major: 123, minor: 456, identifier: "MyBeacon")

解决了第一个问题。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接