我试图在开发模式中在Azure推送通知中心注册设备令牌,但在Azure门户中,它显示0个已注册的活动设备,当我检查通知中心时将显示一次登记发生。设备未在Azure推送通知集线器中以xamarin格式注册
这里是我的示例代码:
应用程序的委托:
var deviceTokenDes = deviceToken.Description;
if (!string.IsNullOrWhiteSpace(deviceTokenDes))
{
deviceTokenDes = deviceTokenDes.Trim('<');
deviceTokenDes = deviceTokenDes.Trim('>');
deviceTokenDes = deviceTokenDes.Replace(" ", "");
DeviceToken = deviceTokenDes.Trim('<');
DeviceToken = deviceTokenDes.Trim('>');
DeviceToken = deviceTokenDes.Replace(" ", "");
}
Hub = new SBNotificationHub(myapp.ListenConnectionString, myapp.NotificationHubName);
登录浏览模式:
var tags = new List<string> { userId };
AppDelegate.Hub?.UnregisterAllAsync(AppDelegate.DeviceToken, error =>
{
if (error != null)
{
Console.WriteLine("Error calling Unregister: {0}", error);
}
AppDelegate.Hub.RegisterNativeAsync(AppDelegate.DeviceToken, new NSSet(tags.ToArray()), errorCallback =>
{
if (errorCallback != null)
{
Console.WriteLine("RegisterNativeAsync error: " + errorCallback.ToString());
}
});
我已经注册设备标识与标签后,用户成功登录到应用程序。你能提出建议吗?
Thanks Digitalsa1nt。在我的应用程序中,我想将userId设置为'标记'。所以当用户登录到应用程序时,我们只能得到userId,但上面的代码可以写在应用程序委托中,这些代码在登录到应用程序之前执行。如何在用户登录到应用程序后实现此代码。 – Deepak
因此,以上是我们用来为“设备”特定通知进行初始注册的地方,我们只关心安装了我们的应用的用户(所以关于事件的通用通知等),当用户登录时,我们有一个独立的类,它使用我们上面收到的devicetoken,并使用新标签重新注册设备。 – Digitalsa1nt
我们如何重新注册使用新标签的设备。当我们休耕相同的代码或需要修改代码时。 – Deepak