У меня есть приложение форм Xamarin, которое запускает этот код для IOS в AppDelegate.cs
файле
public override void RegisteredForRemoteNotifications(UIApplication application, NSData deviceToken)
{
Hub = new SBNotificationHub(WBUtility.ListenConnectionString, WBUtility.NotificationHubName);
Hub.UnregisterAllAsync(deviceToken, (error) => {
if (error != null)
{
System.Diagnostics.Debug.WriteLine("Error calling Unregister: {0}", error.ToString());
return;
}
NSSet tags = null; // create tags if you want
Hub.RegisterNativeAsync(deviceToken, tags, (errorCallback) => {
if (errorCallback != null)
System.Diagnostics.Debug.WriteLine("RegisterNativeAsync error: " + errorCallback.ToString());
});
});
}
Похоже, этот код просто регистрирует устройство в концентраторе уведомлений, что хорошо, но я хочу отправлять уведомления отдельным пользователям. Документация показывает код в цели c, который я не понимаю. По сути, я бы подумал, что каждый раз, когда пользователь входит в мое приложение на стороне клиента, я должен получить маркер его устройства и сопоставить его с его именем пользователя на сервере, но я не знаю, является ли это правильным способом для этого. Итак, как мне сопоставить пользователя зарегистрированному устройству ios, а затем отправить уведомление всем зарегистрированным устройствам ios, в которых пользователь вошел в систему?