我们想要创建一个ios应用程序,其工作主要取决于Apple推送通知。我们为此创建了服务器,服务器成功发送消息。但问题是应用程序在后台运行时不会接收消息而没有连接xcode用于静默推送消息。同时,当它通过usb连接到xcode时,它可以正常工作。
我从服务器发送的Json有效负载如下
{"aps":{"content-available":1},"data":"hai"}
编写的代码“didReceiveRemoteNotification”是
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler{
DEBUG_LOG(@"Remote notification received from server, silent mode");
if(application.applicationState == UIApplicationStateInactive) {
DEBUG_LOG(@"Application is not active now, suspended state");
[self callNotificationMethod:@"Inactive"];
} else if (application.applicationState == UIApplicationStateBackground) {
DEBUG_LOG(@"Application is not active now, background state");
[self callNotificationMethod:@"Background"];
} else {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"CallOriginatedEvent"
message:@""
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"showTitle", nil];
[alert show];
}
completionHandler(UIBackgroundFetchResultNewData);
}
测试平台 操作系统版本:IOS 8.1及以上版本 设备:iPhone 5C,iPhone 5S,iPhone 6,iPhone 6 +
请指教.. 提前致谢
答案 0 :(得分:0)
我认为您的解决方案非常简单 - 您创建了开发证书。尝试创建一个生产,它应该没问题。
除了这个解决方案,你应该检查:
答案 1 :(得分:0)
当我从USB断开iphone时,无声通知对我来说不起作用,一旦我将APNS通知的优先级添加到下面就开始工作而没有USB连接。
{" APS" {'内容可用' => 1,'优先级' =大于10 强>},"数据":"测试"}