iOS端 推送 调用resetbadge方法后 再次推送 角标不显示 打印出badge 为 0

ios
标签: #<Tag:0x00007fb83d0ea608>

(Zc1993) #1
func applicationWillEnterForeground(_ application: UIApplication) {    
        JPUSHService.setBadge(0)
        UIApplication.shared.applicationIconBadgeNumber = 0
        
    }

调用后 再次接受推送 脚标不显示 打印出 badge 为0


app后台时,ios收到极光推送消息提醒后,没有角标
#2

你后台推送的时候传的 badge 值是多少?

提供你的AppKey,消息的msgid,和你客户端收到消息时的客户端日志信息


(Zc1993) #3

发送编号 1514879452
Message ID 42784198673947089
推送方式 立即推送
接受对象 别名:qa_18
推送内容 测试
推送平台 ios
Extras {“ios”:{“sound”:“default”,“badge”:"+1"}}
标题(title)
副标题(subtitle)
通知声音(sound) default
应用角标(badge) +1
推送结果 已发送


#4

客户端日志看一下。看是否是因为你在reset之后才去获取的badge信息。

再就是你是否有同时集成 JMessage?


(Zc1993) #5

-------------------------- JPush Log ----------------------------
--------------------JPush SDK Version:3.0.6–build:40----------
--------------------JCore Lib Version:1.1.5–build:25----------
-----------------AppKey:a19c18ebe64c94aaa5a1bb07----------------

Jan 2 17:43:52 zhaochende-iPhone 3T[14144] : | JIGUANG | E - [JIGUANGService] app not registed, give up set tag:(null) alias:qa_18
Jan 2 17:43:52 zhaochende-iPhone 3T(UserNotifications)[14144] : [cn.life3t.Life3T] Did receive remote notification token
Jan 2 17:43:52 zhaochende-iPhone 3T(UserNotifications)[14144] : [cn.life3t.Life3T] Sending received device token to delegate UIApplication
Jan 2 17:43:52 zhaochende-iPhone SpringBoard(ApplePushService)[8435] : Received token forTopic identifier

是reset 后 来新的通知获取的badge 为 0 ,没有集成JMessage


#6

给一下完整的日志,我需要看到你日志里面打印了这条消息的完整的信息。


(Zc1993) #7
[AnyHashable("_j_business"): 1, AnyHashable("_j_msgid"): 20266200558183105, AnyHashable("_j_uid"): 12459419250, AnyHashable("aps"): {
    alert = "\U6d4b\U8bd5";
    badge = 0;
    sound = default;
}]

这个是我 直接打印的userInfo


#8

我反馈查一下,另外,你这条消息得到的角标是0,那现在不调用resetbadge,再发一条消息,badge是多少呢?还是0还是多少?

即希望你复测下如下步骤,并将msgid,和客户端收到的日志给一下:

1、推送消息 A,得到的角标值是多少

2、调用resetbadge,推送消息B,得到的角标值是多少

3、推送消息 C,得到的角标值是多少,是否依旧为0

4、不为0的情况下,再次调用restbadge,推送消息 D ,得到的角标又是多少


(Zc1993) #9

A

[AnyHashable("_j_business"): 1, AnyHashable("_j_msgid"): 9007201924393560, AnyHashable("_j_uid"): 12460267101, AnyHashable("aps"): {
    alert = "\U6d4b\U8bd5";
    badge = 0;
    sound = default;
}]

B

[AnyHashable("_j_business"): 1, AnyHashable("_j_msgid"): 2495271519, AnyHashable("_j_uid"): 12460267101, AnyHashable("aps"): {
    alert = "\U6d4b\U8bd5";
    badge = 0;
    sound = default;
}]

C

[AnyHashable("_j_business"): 1, AnyHashable("_j_msgid"): 491096909, AnyHashable("_j_uid"): 12460267101, AnyHashable("aps"): {
    alert = "\U6d4b\U8bd5";
    badge = 1;
    sound = default;
}]

D

[AnyHashable("_j_business"): 1, AnyHashable("_j_msgid"): 20266200558640076, AnyHashable("_j_uid"): 12460267101, AnyHashable("aps"): {
    alert = "\U6d4b\U8bd5";
    badge = 0;
    sound = default;
}]

(Zc1993) #10

推送的badge 都是用web 传的 +1


#11

你推送 A消息之前是不是也先调用了resetbadge?


(Zc1993) #12

我这个打断点了 A 消息是没有调用的 我现在有个疑问 我resetbadge 后 再收到推送 badge 不应该是1吗


#13

是的,确实应该是1,所以这样的情况不正常,我现在拿你提供的信息提交上去查一下什么原因。


#14

你现在再复现一下看看,我们这边需要再看看最新的数据。

推送多条消息,不做resetbadge处理,看角标累加是否正常

再resetbadge后推送一条消息,再看角标累加是否正常


(students) #15

我也碰到了同样的问题,我把极光推送设置为+1,推送的第一条通知角标不显示。[JPUSHService setBadge:0]。累加也是从第二条推送开始累加为角标1。


(students) #16
- (void)applicationWillResignActive:(UIApplication *)application {
    [JPUSHService setBadge:0];
    [[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
}

我发现只要程序中走了 [JPUSHService setBadge:0];,下次推送,角标都不显示,推送第二条,从1开始累加,角标一直少一,你可以再程序中添加 [JPUSHService setBadge:0];试试,只要这行代码走了,都会出现这样的问题。


(students) #17

经测试,不做resetbadge角标显示正常。累加也正常,但是resetbadge必须做,不然会出现数字自能加不能减


#18

你将你测试得到的信息也提供一下,AppKey,msgid,是否在推送消息前有resetbadge,我提交下。


(students) #19

appKey “0fa5019a5052e6fb51002bc0” 推送前resetbadge了,消息

打印

userInfo[aps]
  alert = "\U4e00\U6ce2\U798f\U5229\Uff0c\U5feb\U6765\U770b";
    badge = 0;
    sound = default;

日志:

2018-01-03 12:36:35.641236+0800 HaoWai[21474:2509589] TIC Read Status [12:0x1d417d7c0]: 1:57
2018-01-03 12:36:39.914955+0800 HaoWai[21474:2509589]  | JIGUANG | I - [JIGUANGBadgeNumberReport] set badge:0 succeed
2018-01-03 12:36:43.742770+0800 HaoWai[21474:2508445] items In Directory (
)
2018-01-03 12:37:07.368271+0800 HaoWai[21474:2509747] TIC Read Status [2:0x0]: 1:57
2018-01-03 12:37:07.368393+0800 HaoWai[21474:2509747] TIC Read Status [2:0x0]: 1:57
2018-01-03 12:37:39.953458+0800 HaoWai[21474:2509745] TIC Read Status [25:0x1c817a100]: 1:57
Printing description of ((__NSDictionaryI *)0x00000001c0076740):
{
    alert = "\U4e00\U6ce2\U798f\U5229\Uff0c\U5feb\U6765\U770b";
    badge = 0;
    sound = default;
}
2018-01-03 12:40:50.071541+0800 HaoWai[21474:2508445] yinjn------------>:
	File:AppDelegate+Push.m, 
	Function:-[AppDelegate(Push) jpushNotificationCenter:willPresentNotification:withCompletionHandler:], 
	Line:65>>ios 10收到推送

#20

请稍等,我们这边正在定位问题。