iBeacons应用程序在后台发送了大量通知

时间:2015-06-22 07:03:41

标签: ios iphone swift notifications ibeacon

我编写了一个iBeacon应用程序,当用户靠近信标时发送通知。它有效,但它发送了很多通知!例如,我的手机附近有一个iBeacon,它向我发送了很多通知(一分钟约10-15个通知)

如何每小时为每个ibeacon发送一个警报通知?

我已经准备好向您展示我的代码,但只是告诉我您希望看到哪部分代码?

这是我的全部 AppDelegate.swift

1 个答案:

答案 0 :(得分:0)

设置一个标记(属性)以保留已提醒通知的proximityUUIDCLBeacon,如果它们不在区域内,则删除它们。

// property
var myUUIDs: NSMutableArray = NSMutableArray()

// didRangeBeacons
if (!myUUIDs.containsObject(nearestBeacon.proximityUUID.UUIDString)) {
    myUUIDs.addObject(nearestBeacon.proximityUUID.UUIDString)
    sendLocalNotificationWithMessage(message, playSound: playSound)  
}

// remove uuid not in beacons
for var i = 0; i < beacons.count; i++ {
    var beacon = beacons[i] as! CLBeacon
    if (!myUUIDs.containsObject(beacon.proximityUUID.UUIDString)) {
        myUUIDs.removeObject(beacon.proximityUUID.UUIDString)
    }
}