2013-12-09 2 views
1

누군가가 나를 보여 주거나 Windows Phone 8의 알림 허브 등록을 취소하는 방법에 대해 설명 할 수 있습니까?이 방법을 시도했지만 작동하지 않습니다.Windows phone 8 알림 허브 등록 해제

public void registerForNotifications(string[] tags) 
    { 
     var channel = HttpNotificationChannel.Find("xxx"); 
     if (channel == null) 
     { 
      channel = new HttpNotificationChannel("xxx"); 
      channel.Open(); 
      channel.BindToShellToast(); 
     } 

     string[] tagsToSubscribeTo = tags; 


     channel.ChannelUriUpdated += new EventHandler<NotificationChannelUriEventArgs>(async (o, args) => 
     { 
      var hub = new NotificationHub("xxx", "xxx"); 
      await hub.RegisterNativeAsync(args.ChannelUri.ToString(), tagsToSubscribeTo); 
     }); 

    } 

public async void unregisterFromNotifications() 
    { 

     var channel = HttpNotificationChannel.Find("xxx"); 
     var hub = new NotificationHub("xxx", "xxx"); 
     await hub.UnregisterAllAsync(channel.ChannelUri.ToString()); 
    } 

답변

0

"작동하지 않았다"는 것을 말하지 않았습니다. 오류 메시지가 나타 났습니까? 성공을보고했지만 실제로 실패 했습니까? 귀하의 질문에, 당신이 그 것들을 공유하는 경우에 더 많은 도움이됩니다. 하지만 어쨌든 이걸 찌를거야.

Windows Phone 8 응용 프로그램에서 DefaultListenSharedAccessSignature 끝점을 사용하고있는 것으로 의심됩니다. http://msdn.microsoft.com/en-us/library/dn495373.aspx에 따르면

, 청취 액세스 수준의 권한을 부여하기 :

  • 가/업데이트 등록을 만듭니다.

  • 등록을 읽습니다.

  • 핸들에 대한 모든 등록을 읽으십시오.

  • 등록을 삭제하십시오. UnregisterAllAsync 방법은 오히려 하나보다, 모든 등록을 삭제하는 높은 액세스 레벨이 필요할 수 있습니다 경우 마지막 하나를 읽기

, 궁금하다.

그러나 DefaultFullSharedAccessSignature 끝점을 사용하는 대신 UnregisterAllAsync 대신 UnregisterAsync 메서드를 사용하는 것이 좋습니다.

면책 조항 : 나는 이것을 시도하지 않았습니다. 전혀 도움이되지 않을 수도 있습니다.