Azure Service Bus通知中心的ios通知模板

我正在为ios使用 windows azure服务总线通知中心

我通过以下代码注册我的设备:

SBNotificationHub* hub = [[SBNotificationHub alloc] initWithConnectionString:
                                  @"Endpoint=sb://......" notificationHubPath:@"...."];


        NSMutableSet *set = [NSMutableSet set];
        [set addobject:@"general"];
        [hub registerNativeWithDevicetoken:devicetoken tags:[set copy] completion:^(NSError* error) {
            if (error != nil) {
                NSLog(@"Error registering for notifications: %@",error);
                [self.delegate homePopUpViewControllerEnterButtonPress:self];

            }


        }];

并使用以下代码从.Net Backend发送通知

var hubClient = NotificationHubClient.CreateClientFromConnectionString(<connection string>,"<notification hub name>");

IDictionary<string,string> properties = new Dictionary<string,string>();

properties.Add("badge","1");
properties.Add("alert","This is Test Text");
properties.Add("sound","bingbong.aiff");

hubClient.SendTemplateNotification(properties,"general");

我能够收到通知但我的问题是:通知没有我添加的任何属性,没有声音,没有徽章……

如果你能帮助我

参考文献:http://msdn.microsoft.com/en-US/library/jj927168.aspx

谢谢

解决方法

注册了本机通知,但随后您正在发送模板通知.
如果您想发送本机(如果您想要访问不同平台上的设备,则需要额外的发送),您必须使用

hub.SendAppleNativeNotification(
    "{ \"aps\": { \"alert\": \"This is my alert message for iOS!\"}}","tag");

有关iOS有效载荷格式,请参阅https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html.

或者,您可以注册模板通知

Nsstring* template = @"{aps: {alert: \"$(myToastProperty)\"}}";
[hub registerTemplateWithDevicetoken:devicetoken 
                                name:@"myToastRegistration"
                    jsonBodyTemplate:template
                      expiryTemplate:nil
                                tags:nil 
                          completion:^(NSError* error) {
    if (error != nil) {
        NSLog(@"Error registering for notifications: %@",error);
    }
}];

使用如下模板:

{
   “aps”: {
       “alert”: “$(alert)”
   }
}

然后,您可以像使用hub.SendTemplateNotification一样发送通知.

有关模板与本机之间差异的更多信息,请参阅:http://msdn.microsoft.com/en-us/library/jj927170.aspx

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...