2017-04-03 3 views
1
func locationManager(_ manager: CLLocationManager, didEnterRegion region: CLRegion) { 
    print("didEnterRegion") 


    let beaconRegion = region as! CLBeaconRegion 

    let content = UNMutableNotificationContent() 

    content.title = NSString.localizedUserNotificationString(forKey: "I came", arguments: nil) 
    content.body = NSString.localizedUserNotificationString(forKey: "My Information:\(region.identifier), major:\(beaconRegion.major!)/minor:\(beaconRegion.minor!)", arguments: nil) 
    content.sound = UNNotificationSound.default() 
    content.badge = UIApplication.shared.applicationIconBadgeNumber as NSNumber?; 
    content.categoryIdentifier = "com.elonchan.localNotification" 
    // Deliver the notification in five seconds. 
    let trigger = UNTimeIntervalNotificationTrigger.init(timeInterval: 1, repeats: false) 
    let request = UNNotificationRequest.init(identifier: region.identifier, content: content, trigger: trigger) 

    // Schedule the notification. 
    let center = UNUserNotificationCenter.current() 
    center.add(request) 
    userdefalut.set(nowTime, forKey: "lastDate_\(tempUUID_2)") 
    userdefalut.synchronize() 
    print(UIDevice.current.identifierForVendor!.uuidString) 
} 

CLBeaconRegion (proximityUUID erhalten: UUID (uuidString: "00000000-0000-0000-0000- (name)") !, major: 208, minor: 56, Kennung: „(Name) (Pfad) ")wie UUID in schnellen didEnterRegion

Wie kann ich UUID in didEnterRegion erhalten? Bitte helfen Sie mir ..

Antwort

0

du versuchen ..

func locationManager(manager: CLLocationManager, didEnterRegion region: CLRegion) { 
    manager.startRangingBeaconsInRegion((region as! CLBeaconRegion)) 
    var r = (region as! CLBeaconRegion) 
    self.sendLocalNotificationWithMessage("\(r.proximityUUID)") 
    self.sendLocalNotificationWithMessage("\(r.identifier)") 
} 
0

Sie müssen einfach CLRegion-CLBeaconRegion werfen. Wie dies in Swift 3:

let beaconRegion = region as! CLBeaconRegion 

Oder dies in Objective C:

CLBeaconRegion *beaconRegion = (CLBeaconRegion *)region; 

Sobald Sie das tun, können Sie alle Felder auf CLBeaconRegion zugreifen:

Swift 3:

NSLog("My UUID: \(beaconRegion.proximityUUID)") 

Ziel C:

NSLog(@"My UUID: %@", beaconRegion.proximityUUID);