自定义消息通知栏要怎么设置,有没有个DEMO

ios
标签: #<Tag:0x00007fb83a866268>

#1

请问自定义消息在networkDidReceiveMessage接受到消息之后是不是用本地通知来显示通知栏,为什么我用本地通知显示了通知栏只能在前台收的到消息,一旦后台就收不到了


#2

自定义消息与通知消息的区别


#3

你这里没什么关于自定义消息的解释,就说了一句通知栏要自己设置,我的问题就是自己设置通知栏遇到的


#4

必须处于前台才可以收到自定义消息


#5

不是吧,这么坑,那能不能如果是推送通知的话,怎么控制收到通知栏的消息,比如我在通知发的是,title和content,但是收到通知后要通知栏只显示title,要去哪里设置


#6

自定义消息是要与极光进行连接才行的,iOS在后台是没法建立连接的。

通知消息即Apple的apns通知。
你的需求可能可以通过这个去实现:
https://docs.jiguang.cn/jpush/client/iOS/ios_new_fetures/#ios-10-new-features

另外,一些你需要进行自定义的信息可以写在extras里面


#7

我发通知的时候只有一个框可以填推送的内容,哪里可以填一些隐藏的消息写在extras里面?


#8

可选设置


#9

好的,我问下,这两个方法有什么区别

- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(NSInteger))completionHandler; 
// NSDictionary * userInfo = notification.request.content.userInfo; 
// APNs内容为userInfo

- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void (^)())completionHandler; 
// NSDictionary * userInfo = response.notification.request.content.userInfo; 
// APNs内容为userInfo

#10

这是iOS10 获取消息的新接口,第一个是新增的当 app处于前台时的方法。


#11

对了,我不想极光来控制我角标数字,我想自己根据数据库里已读未读来显示我的角标,在哪里改


#12

这个就是你直接自己去实现这个功能,不用极光的了

Google有些示例的


#13

问题是我现在发通知的话如果我不控制,角标还是极光在控制,有办法取消没


#14

你服务端和客户端都不要使用极光提供的关于别名的接口和字段


#15

可是这样的话就收不到极光的消息了吧,我还是接受极光的消息的,只是不要角标相关的内容


#16

= =你推送消息时去掉角标那个字段就好了呀,其他的不改变,就除了角标没有之外,没什么影响。
再就是客户端也不要再调用接口给极光上报你的角标信息


#17

对了, 当接受到通知的时候,如果是在前台就会调用- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(NSInteger))completionHandler;这方法,如果是后台的话,只有当我点击那个推送通知进入APP才会调用- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void (^)())completionHandler; ,如果我是直接点击APP没点击通知栏进入APP,好像没调用什么方法,这种情况咋办


#18

这是正常的。

你若是需要,可以发background消息,但是他也有限制

仔细阅读文章:
https://docs.jiguang.cn/jpush/client/iOS/ios_new_fetures/#ios-7-background-remote-notification


#19

你好,弄完之后我发现,只要用了
`

  • (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler ;`的话,
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(NSInteger))completionHandler; 

- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void (^)())completionHandler; 

这两个方法不实习也行了啊,有没有都没什么区别了好像


#20

用了background,方法就都转为background接收,文档中已经明确说到了。

你可以根据自己对这条消息的需要,来选择是否加上 content-available: 1