2016-03-18 24 views
-2

私のandroid app.Iでプッシュ通知が受信されません。多くのプロバイダを試しましたが、まだ動作させることができませんでした。 私のバックエンドがAsp.netにあるので、私はAzureプッシュハブを使用すると考えましたが、どこから始めるべきかわかりません。私はプッシュ通知について少し経験があります。たとえば、「更新を確認する」のような簡単なプッシュを送信するにはどうすればいいですか?などAsp.netプッシュ通知

答えて

0

@Amr Alaa:紺碧の通知ハブで行くことができます。それは非常に簡単な実装をしています。 Androidアプリから/ API(それは紺碧の上にあるかどうかは重要ではありません。)

//you can create class and get instance of the hub in constructor 

    private NotificationHubClient hub = NotificationHubClient.CreateClientFromConnectionString("Your connectionstring", "your Notification hub name"); 

アプリコールdiviceトークンを使用して、この方法で起動中。

public async string registerpushhandle(string handle = null) 
    { 

     try 
     { 


      string newRegistrationId = null; 

      if (handle != null) 
      { 
       var registrations = await hub.GetRegistrationsByChannelAsync(handle, 500); 

       foreach (RegistrationDescription registration in registrations) 
       { 
        if (newRegistrationId == null) 
        { 
         newRegistrationId = registration.RegistrationId; 
        } 
        else 
        { 
         await hub.DeleteRegistrationAsync(registration); 
        } 
       } 
      } 

      if (newRegistrationId == null) newRegistrationId = await hub.CreateRegistrationIdAsync(); 


     } 
     catch (Exception ex) 
     { 


     } 
     return newRegistrationId 
    } 

登録IDを取得した後、このメソッドを呼び出すには、registrationid、plateform、およびdevice tokenを渡します。

public async void registerpushid(string id, string platform, string handle) 
     { 


      try 
      { 

       RegistrationDescription registration = null; 
       switch (platform.ToLower()) 
       { 
        case "mpns": 
         registration = new MpnsRegistrationDescription(handle); 
         break; 
        case "wns": 
         registration = new WindowsRegistrationDescription(handle); 
         break; 
        case "apns": 
         registration = new AppleRegistrationDescription(handle); 
         break; 
        case "gcm": 
         registration = new GcmRegistrationDescription(handle); 
         break; 

       } 

       registration.RegistrationId = id; 



       registration.Tags = new HashSet<string>(); 
       registration.Tags.Add(handle); 
       registration.Tags.Add("yourcustometag"); 


       try 
       { 
        await hub.CreateOrUpdateRegistrationAsync(registration); 


       } 
       catch (MessagingException e) 
       { 

       } 


      } 
      catch (Exception ex) 
      { 


      } 
0

アムル、あなたは、Android、iOSのにプッシュ通知を送信するには、その完全なライブラリをpushsharp(https://github.com/Redth/PushSharp)を使用することができ、

ここでは、実行中の設定と取得するためのガイドです: https://github.com/Redth/PushSharp/wiki/How-to-Configure-&-Send-GCM-Google-Cloud-Messaging-Push-Notifications-using-PushSharp

私はいくつかのプロジェクトでそれを使って、素晴らしい結果を得ました。

は、それは彼らがAndroidの&から完全に無料、無制限のプッシュ通知を提供して