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