2017-02-21 17 views
0

내 Xamarin Android 프로젝트에서 NH에 등록하려고했습니다. FireBase를 구성 할 수 있었지만 클라이언트 측에서 Notification Hub에 등록하려고 할 때 Unauthorized 예외가 발생했습니다. UWP 프로젝트에서 동일한 것을 사용 했으므로 올바른 연결 자격 증명을 사용했음을 확신합니다.Xamarin Android 프로젝트의 알림 허브에 등록 할 수 없습니다.

Hub = new NotificationHub(Constants.NotificationHubName, "Endpoint=sb://namespace.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=mykey=", 
             context); 
      try 
      { 
       Hub.UnregisterAll(registrationId); 
      } 
      catch (Exception ex) 
      { 
       Log.Error(MyBroadcastReceiver.TAG, ex.Message); 
      } 

      var tags = new List<string>() { "droid" }; // create tags if you want 
      // var tags = new List<string>() { }; 

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

내가 두 가지 방법 UnregisterAll을하고 등록 권한이없는 예외를 얻고있다 :

여기 내 코드입니다. 제발,이 문제를 해결하는 방법에 대한 조언.

답변

0

알림 허브 자격 증명이 잘못되었거나 잘못되었음을 나타냅니다. 올바른 알림 허브와 해당 연결 문자열을 참조하고 있는지 확인하십시오.

참고로 api 등록 해제를 호출 할 필요가 없습니다. 등록 API는 CreateOrUpdate로 작동합니다. 존재하지 않을 경우 등록 작성을 담당합니다.

+0

답변 해 주셔서 감사합니다. 올바른 자격 증명을 사용합니다. 앞에서 말했듯이 UWP 프로젝트의 경우 등록 작업과 동일한 방법을 사용합니다. –

+0

MobileServiceClient를 통해 획득 한 Push 개체를 통해 등록 작업이 하나 더 있지만 RegisterAsync 메서드는 태그를 등록 할 수 없습니다. 템플릿에서만 작동합니다. –

+0

http://aka.ms/zumobook - 5 장 - 태그 등록 코드가 들어있는 코드를 확인하십시오. –

0

MobileServiceClient가 작동하는 동안 App Service Push를 통해 등록 할 수 있다고 언급 했으므로 http://aka.ms/zumobook - 5 장을 확인하십시오. 여기에는 태그로 등록하는 방법에 대한 각 플랫폼의 코드가 포함되어 있습니다.