Beacon项目中的错误

Error in Beacon project

let region = CLBeaconRegion(proximityUUID: NSUUID(UUIDString: "(the appropriate UUID for my beacons)", identifier: "Estimotes")

我项目中的上述代码行给我一个错误说明:

init(UUIDString;)' has been renamed to 'init(uuidString:)'

有什么解决办法吗?

您需要解包 proximityUUID 提供的 NSUUID

let beaconUUID = knownBeacons[i].proximityUUID!.UUIDString
let region = CLBeaconRegion(proximityUUID: beaconUUID, identifier: "Estimotes")

可能是打字错误,但显示的代码:

let region = CLBeaconRegion(proximityUUID: 
  NSUUID(UUIDString: "(the appropriate UUID for my beacons)", identifier: "Estimotes")

在 NSUUID 初始值设定项后缺少结束符 )。它应该是这样的:

let region = CLBeaconRegion(proximityUUID: 
  NSUUID(UUIDString: "(the appropriate UUID for my beacons)"), identifier: "Estimotes")

在 Swift 3.0 中,"UUIDString" 在 "uuidString" 中更改。在信标的唯一 UUID 之后,您必须插入 "as! UUID"。 所以,你必须像这样改变你的 let :

let region = CLBeaconRegion(proximityUUID: NSUUID(uuidString: "79A60506-EC33-44A4-AB5D-304816FEC4E2") as!UUID, identifier: "Estimates")

原回答: