2016-05-10 14 views
0

私のAndroidデバイスに通知を送信するための小さなアプリケーションを作成したいと思います。AndroidのAzure通知ハブ特定のユーザーに送信する方法

私はWPFアプリケーションとAndroidアプリケーションを作成しました。私はnotifにAzure Notification HubとGCMを使用しました。

私のAndroid端末すべてに対して通知を送信できますが、ONE端末は通知できません。

そして、私はあなたの助けを得るためにここに来ました。このような

私のWPFアプリケーションの作業:

private async void SendNotificationAsync() 
    { 
     var hub = NotificationHubClient.CreateClientFromConnectionString(Keys.FullConnectionString, Keys.NotificationHubName); 
     if (!string.IsNullOrEmpty(TxtTo.Text)) 
      await hub.SendGcmNativeNotificationAsync(
        "{'to': '" + TxtTo.Text + "', 'data': { 'message': '" + TxtMessage.Text + "', 'title': '" + TxtTitle.Text + "' } }"); 
     else 
     { 
      await hub.SendGcmNativeNotificationAsync(
        "{'data': { 'message': '" + TxtMessage.Text + "', 'title': '" + TxtTitle.Text + "' } }"); 
     } 
    } 

私の問題はこれです:

私は、Android IDのデバイス登録を取得する方法を理解していない、またはそれから、それは私で生成された私のRegistrationIdですOnRegistered方法:

protected override void OnRegistered(Context context, string registrationId) 
    { 
     Log.Verbose(MyBroadcastReceiver.TAG, "GCM Registered: " + registrationId); 

     RegistrationId = registrationId; 
     ChangeTextID(registrationId); 

     Hub = new NotificationHub(Keys.NotificationHubName, Keys.ListenConnectionString, context); 

     try 
     { 
      Hub.UnregisterAll(registrationId); 
     } 
     catch (Exception ex) 
     { 
      Log.Error(MyBroadcastReceiver.TAG, ex.Message); 
     } 

     var tags = new List<string>(); 

     try 
     { 
      Hub.Register(registrationId, tags.ToArray()); 
     } 
     catch (Exception ex) 
     { 
      Log.Error(MyBroadcastReceiver.TAG, ex.Message); 
     } 
    } 

しかし、私はそれが仕事をdosen't(私のWPFのアプリで)私の通知を送信するには、このIDを使用している場合(TxtTo.Textを交換してください)

私を助けることができますか?

答えて

2

対象のプッシュ通知を送信するために、そのアプリケーションを購読しているタグ以外は使用する必要はありません。 通知ハブのアプリケーションを登録すると、通知ハブのバックエンド登録テーブル(Azure Portalからアクセスするか、Service Bus Explorerを使用してアクセスする可能性があります)にレコードが保存されます。そのアプリケーションを受信しなかった場合は、適切なタグが付いたテーブルにそのアプリケーションがあるかどうかを確認してください。

これは、自分のIDなどを知らなくても、ターゲット通知をユーザーに送信できるという点で素晴らしい機能です。Just subscribe themプラットフォーム間で完全に動作します。このアプローチを使用して、異なるデバイスやプラットフォーム上の同じタグを購読しているユーザーにターゲットを絞った通知を送信します。

May beが該当します。私が見るように、あなたはあなたの通知をタグに送信しません(hereのようなSendGcmNativeNotificationAsync余分な引数に追加しようとします)。それを正確なタグに送信してください(ポータルから行うことができます、Notification Hubダッシュボード=> DEBUGペイン)。

関連する問題