【发布时间】:2017-01-05 12:15:21
【问题描述】:
我正在尝试向 iOS 远程通知添加操作。
这是我发送给休斯顿 (https://github.com/nomad/houston) 的命令
apn push "APNS_TOKEN_HERE" -c /Users/johannwerner/Desktop/apple_push_notification.pem -P '{"aps":{"alert":{"action-loc-key":"OK","title":"hello","body":"Hello"},"category":"ACTIONABLE"}}'
当应用程序从推送通知启动并且我从 didFinishWithOptions 方法记录 launchOptions 时,我得到以下信息
{
UIApplicationLaunchOptionsRemoteNotificationKey = {
aps = {
alert = {
"action-loc-key" = OK;
body = Hello;
title = hello;
};
category = ACTIONABLE;
};
};
}
当我在代码中注册通知时,我正在使用以下代码。
if (NSClassFromString(@"UNUserNotificationCenter")) {
UNNotificationAction* snoozeAction = [UNNotificationAction
actionWithIdentifier:@"SNOOZE_ACTION"
title:@"Snooze"
options:UNNotificationActionOptionNone];
UNNotificationCategory* generalCategory = [UNNotificationCategory
categoryWithIdentifier:@"GENERAL"
actions:@[snoozeAction]
intentIdentifiers:@[@"ACTIONABLE"]
options:UNNotificationCategoryOptionCustomDismissAction];
UNAuthorizationOptions options = (UNAuthorizationOptionBadge | UNAuthorizationOptionSound |UNAuthorizationOptionAlert);
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
[center setNotificationCategories:[NSSet setWithObjects:generalCategory, nil]];
center.delegate = self;
[center requestAuthorizationWithOptions:options completionHandler:^(BOOL granted, NSError * _Nullable error)
{
if( !error ){
[Localytics didRequestUserNotificationAuthorizationWithOptions:options
granted:granted];
[[UIApplication sharedApplication] registerForRemoteNotifications];
}
[[NSNotificationCenter defaultCenter] postNotificationName:PUSH_DELEGATE_AFTER_REGISTERED object: nil];
}];
}
我收到一个标题和正文为“你好”的推送,但推送通知上没有按钮或操作。
我已经通过这个指南https://nrj.io/simple-interactive-notifications-in-ios-8/
【问题讨论】:
-
按通知获取按钮,不直接显示。
-
我已推送通知或向左滑动以按视图但没有其他按钮
标签: ios notifications apple-push-notifications ios10