当前位置: 首页 > 知识库问答 >
问题:

Windows Phone应用程序未收到来自Parse.com的推送通知

鱼意远
2023-03-14

我已经学习了这篇关于在Windows Phone应用程序中设置解析推送通知的教程。这是我的代码:

public App() {
  // Global handler for uncaught exceptions.
  UnhandledException += Application_UnhandledException;

  // Standard XAML initialization
  InitializeComponent();

  // Phone-specific initialization
  InitializePhoneApplication();

  // Language display initialization
  InitializeLanguage();

  // Show graphics profiling information while debugging.
  if (Debugger.IsAttached) {
    // Display the current frame rate counters.
    Application.Current.Host.Settings.EnableFrameRateCounter = true;

    // Show the areas of the app that are being redrawn in each frame.
    //Application.Current.Host.Settings.EnableRedrawRegions = true;

    // Enable non-production analysis visualization mode,
    // which shows areas of a page that are handed off to GPU with a colored overlay.
    //Application.Current.Host.Settings.EnableCacheVisualization = true;

    // Prevent the screen from turning off while under the debugger by disabling
    // the application's idle detection.
    // Caution:- Use this under debug mode only. Application that disables user idle detection will continue to run
    // and consume battery power when the user is not using the phone.
    PhoneApplicationService.Current.UserIdleDetectionMode = IdleDetectionMode.Disabled;
  }

  // Initialize the Parse client with your Application ID and .NET Key found on
  // your Parse dashboard

  ParseClient.Initialize("grpTmrClet8K35yeXg2HQKK8wl59VeC9ijH0I0dn", "os8EfSFq9maPBtDJ91Mq0xnWme8fLANhttTPAqKu");
  // After calling ParseClient.Initialize():
  this.Startup += async (sender, args) =>
  {
      // This optional line tracks statistics around app opens, including push effectiveness:
      ParseAnalytics.TrackAppOpens(RootFrame);

      // By convention, the empty string is considered a "Broadcast" channel
      // Note that we had to add "async" to the definition to use the await keyword
      await ParsePush.SubscribeAsync("testchannel");
  };


}

// Code to execute when the application is launching (eg, from Start)
// This code will not execute when the application is reactivated
private async void Application_Launching(object sender, LaunchingEventArgs e) {
    await ParseAnalytics.TrackAppOpenedAsync();
}

当我从Parse dashboard发送推送通知时,它不会被接收到。我试着在模拟器(Windows Phone 8.0)和设备(8.1)上运行,在前景、背景和关闭应用程序时,结果都是相同的。

当我使用像上面的“testchannel”这样的通道并使用segment选项时,通道名称会出现在选项的下拉列表中,表明应用程序至少正在连接Parse,但它只是不会接收通知。

希望有人能帮我找出我所缺少的东西。提前道谢。

共有1个答案

岳高明
2023-03-14

如果您正在开发Windows Phone8.1应用程序,请确保您在清单文件中启用了toast通知。我还不是很了解关于解析的一切,但这对我来说是可行的。

在app.xaml.cs中:

public App()
    {
        this.InitializeComponent();
        this.Suspending += this.OnSuspending;

        ParseClient.Initialize("wSjuNTbtjVLRaedXvOoaf9S5cTbkuQohTulNZ2vS", "nWZMhXRet9Wotlgikb9aUdKf5GFtRiMvduw7w68z");

    }

我们订阅并启用启动后的分析:

protected async override void OnLaunched(LaunchActivatedEventArgs e)
//Generated codes go here
await ParsePush.SubscribeAsync("testchannel");
await ParseAnalytics.TrackAppOpenedAsync();

那就简单的起作用了。您应该根据需要修改代码。希望这有帮助。

 类似资料:
  • 我知道这个问题已经问过很多次了,但是我仍然无法从parse.com获得推送通知 推送通知正在从parse.com成功发送,但我的应用程序没有接收到它们。 大多数人用这个解决了他们的问题:我不能在应用程序中接收来自对我不起作用的Parse bt的推送通知。 我也试过Android--不能接收来自parse.com的推送。 有些人建议改变包的名称,我做了,甚至做了一个新的应用程序,但没有帮助。 这是我

  • 我试图在我正在开发的Cordova应用程序中获得推送通知。它们在Android应用程序中工作得很好,在iOS应用程序中,当应用程序处于前台时,它们也工作得很好,但当应用程序处于后台或终止时,我不会收到任何通知。 我启用了“推送通知”和“后台模式-远程通知”功能: 我100%肯定服务器有设备令牌(因为推送通知在前台工作,我可以在数据库中看到它)。 如果我在应用程序应该收到通知后启动它或将它带到前台,

  • 消息“成功订阅到广播频道。”在应用程序启动时打印。但是当我使用parse.com上的“发送推送通知”功能时,我的手机没有收到任何推送通知。 为什么不起作用?

  • null 我还试了一下: 关闭应用程序进程-&>;关闭设备-&>;打开设备电源-&>;发送通知。。。并且没有收到通知! 看起来firebase只有在设备启动了应用程序而不是100%关闭的情况下才能收到通知,我的意思是,只需用后退键关闭它而不是关闭应用程序进程。 这怎么可能呢?据推测,即使应用程序关闭,firebase也应该收到通知。 我正在Nexus5X和Android 8.0上进行测试,我使用的

  • 我目前正在开发Android(Cordova)应用程序,我正在使用Oneignal推送通知。首先,如果我关闭应用程序,推送通知不会被传递,所以我不得不添加一个Cordova插件来保持我的应用程序在后台运行: 我在deviceready之后的代码: 谢了。

  • 按照这个指南,我将一个Android应用程序连接到了Google Firebase云消息服务(FCM ), 我按照这个答案建立了FCM之间的连接 我可以成功接收从FCM控制台发送的消息,但不能从AWS SNS控制台接收。 AWS上记录的消息传递状态显示我发送的每一条消息都成功,而我的设备上没有显示任何通知。 有没有办法检查发生了什么?