推送通知性能问题 [UWP]

Push Notification Performance Issue [UWP]

我的 UWP 项目的推送通知配置有问题。实际上,问题在于性能。为推送通知注册我的应用程序的那段代码(下方)使它在打开时慢得多。

一些测试结果(启动画面加载时间因为我使用 OnStartAsync/Template10)

使用的代码 => 桌面:15 秒,移动:16

代码未使用 => 桌面:3 秒,移动:6

StoreServicesEngagementManager engagementManager =
 StoreServicesEngagementManager.GetDefault();
await engagementManager.RegisterNotificationChannelAsync();

移动设备:Microsoft Lumia 950

应用程序。目标版本:内部版本 15063

Microsoft 服务商店 SDK10.1705.16 版本

我想知道人们如何使用这个 SDK 并获得性能?谢谢!

我已经测试了您的代码并在 windows Template10 中重现了您的问题。问题是 RegisterNotificationChannelAsync 方法发出网络请求需要时间。需要多长时间取决于网络环境。

直接在OnStartAsync方法中调用RegisterNotificationChannelAsync会阻塞主线程。所以,您需要花很长时间等待应用程序启动。

您可以使用async 方法来打包您提到的代码。

private async void RegisterEngagementNotification()
{
    StoreServicesEngagementManager engagementManager = StoreServicesEngagementManager.GetDefault();
    await engagementManager.RegisterNotificationChannelAsync();
}

该方法将在子线程中调用。并且应用程序将直接启动。

public override async Task OnStartAsync(StartKind startKind, IActivatedEventArgs args)
{
    RegisterEngagementNotification();
    await NavigationService.NavigateAsync(typeof(Views.MainPage));
}