如何通过Aure Notification Hub App Service SDK或手动为Xamarin Forms App注册设备?

问题描述 投票:0回答:1

所以我使用的是Azure Notification Hub,在那之后,我按照他们提到的教程使用FCM for Android,对其进行配置并使用其API密钥,并为iOS创建了证书,该证书工作正常。]

但是问题是我正在处理Xamarin表单,我想知道是否可以通过API手动进行注册,并且我已经在我的API服务中编写了一种方法来进行此操作

 public async Task<string> RegisterDevice([FromBody] string handle = null)
    {
        string newRegistrationId = null;
        //newRegistrationId = await hub.CreateRegistrationIdAsync();
        //// make sure there are no existing registrations for this push handle (used for iOS and Android)
        //if (handle != null)
        //{
        //    var registrations = await hub.GetRegistrationsByChannelAsync(handle, 100);

        //    foreach (var registration in registrations)
        //    {
        //        if (newRegistrationId == null)
        //        {
        //            newRegistrationId = registration.RegistrationId;
        //        }
        //        else
        //        {
        //            await hub.DeleteRegistrationAsync(registration);
        //        }
        //    }
        //}
        newRegistrationId = await hub.CreateRegistrationIdAsync();
        return newRegistrationId;
    }

但是我无法理解该设备将如何链接到该注册ID和/或什么是PNS句柄,我知道缩写但我不知道在这种情况下如何使用它,或者根本不知道它是什么。必要?任何帮助将不胜感激

所以我使用的是Azure Notification Hub,因为我遵循他们提到的教程,其中提到使用FCM for Android,对其进行配置并使用其API密钥,并为iOS创建证书,...

xamarin.forms xamarin.android firebase-cloud-messaging apple-push-notifications azure-notificationhub
1个回答
0
投票

注册Azure Notification Hub时,如果要在登录后请求推送权限,则必须在登录后调用RegisterForRemoteNotifications();(iOS)和CreateNotificationChannel();(Android)。您要问的内容将需要一些步骤-您将必须创建一个像this这样的DependencyService,这将需要使用一个IPushRegistrationService函数来创建一个像RegisterForPush()这样的接口,基本上在登录后会被调用:

© www.soinside.com 2019 - 2024. All rights reserved.