0

Android C2DM で通知を送信しています。C2dmSharp を使用しています。200 種類の通知を携帯電話に送信しようとしています。サーバー側では、id=[送信されたメッセージの ID] (ここに文書化されているように) の OK 応答が返されるので、サーバーはうまく機能していると思います。しかし、私の電話では、200ではなく、いくつかの通知しか受け取りません! 保証されたサービスではないことはわかっていますが、90% の通知が送信されていません。私は何か間違ったことをしていますか?1 つのデバイスに 200 件のメッセージを連続して送信することは実際に可能ですか?

これを尋ねるより良い場所を知っている場合は、私に教えてください:)

これを使用して通知を送信しています

コードは次のとおりです。

if (notificationService != null)
            {
                notificationService.Start();
                foreach (var itemToProcess in itemsToProcess)
                {
                    itemToProcess.NotificationDateTime = DateTime.Now;
                    mobile.SubmitChanges();

                    string deviceToken = GetCleanDeviceToken(itemToProcess.MobileDevice.PushNotificationIdentifier);
                    var extras = new NameValueCollection();
                    extras.Add("salemessage", itemToProcess.MobileDeviceNotificationText.Text);
                    extras.Add("ismultisale", "false");
                    if (itemToProcess.SaleId.HasValue) extras.Add("saleid", itemToProcess.SaleId.Value.ToString());
                    try
                    {   
                        Thread.Sleep(200);
                        notificationService.QueueMessage(deviceToken, extras, "key");
                    }
                    catch (Exception exception)
                    {
                        //logging
                    }
                }

                notificationService.Stop();
            }
4

1 に答える 1

0

C2DM は非推奨なので、GCM を使用しましょう。.NET サーバーの場合は、https://github.com/Redth/PushSharpがあります。

于 2012-07-20T13:35:54.627 に答える