Я пытаюсь реализовать приложение, которое просто обнаруживает маяк и отображает уведомление, когда приложение находится в фоновом режиме.
Первоначально я реализовал CBCentralManager и получил события в didDiscoverPeripheral, который работал отлично, но как только онпереходит в фоновый режим и перестает получать события.
Поскольку фоновый режим является требованием, я реализовал CLLocationManager.Я пометил местоположение, background-central и background-периферийные как фоновые режимы в info.plistЯ также добавил NSLocationAlwaysUsageDescription, NSLocationAlwaysAndWhenInUseUsageDescription и NSLocationWhenInUsageDescription в info.plist.
Соответствующий код похож на следующий:
locMgr = new CLLocationManager();
locMgr.PauseLocationUpdatesAutomatically= false;
locMgr.RequestAlwaysAuthorization();
locMgr.AllowsBackgroundLocationUpdates = true;
var nsuuid = new NSUuid(uuid.ToString());
var nsidentifier = new NSString(identifier);
CLBeaconRegion region = new CLBeaconRegion(nsuuid, nsidentifier);
region.NotifyOnExit = truel
region.NotifyOnEntry = true;
region.NotifyEntryStateOnDisplay = true;
locMgr.StartMonitoring(region);
public void OnRegionEntered(object sender, CLRegionEventARgs e)
{
is there anyway to get advertising info (instance id) of beacon in here?
anything to identify the beacon besides the proximity id which is the same for multiple beacons?
}
У меня есть внутренний сервер, содержащий дополнительную информацию, которая содержит дополнительную информациюхотел бы позвонить, чтобы получить имя / сообщение.но это связано с идентификатором экземпляра маяка.
Кто-нибудь знает, как получить информацию о маяке в фоновом режиме?Могу ли я подключиться к периферийному устройству или настроить cblcentralmanager в OnRegionEntered или любым другим способом?
Спасибо за любую помощь!