角标都收到了,通知没有提示

ios
标签: #<Tag:0x00007fb84cd64208>

(杨) #1

我的推送角标都能收到,但是就是收不到推送条,不知道什么原因,后台的代码用的php,发现我的逻辑跟极光一样,这个问题应该怎么办.


#2

看一下你的客户端日志,是否接收到消息。

再提供一下这条消息的msgid和测试设备的registrationID

顺便再贴一下后台推送代码


(杨) #3

客户端选择没法打印日志,是因为我们只有打包才能用你们的推送,不打包用不了,不知道什么逻辑,
后台代码:

  public function iosPushByRegistId($registrationId,$title="易视云",$extras=null,$alert=""){
        $pushObject = $this->clientObjeck->push();
        $reportObject = $this->clientObjeck->report();
        $_open_page = null;
        $sound = null;
        $badge = "1";
        $content_available = null;
        $category = null;
        $ret = $pushObject->addRegistrationId($registrationId)->setPlatform(array('ios'))->addIosNotification($alert, $sound, $badge, $content_available, $category, $extras)->send();
        $this->logger->info(" send success".json_encode($ret));
        if(isset($ret['body']['msg_id'])){
            return true;
        }else{
            return false;
        }
    }
王晓胜
晓胜
        $title = $userinfo['nickname']."正在直播";        
        
        
        $this->logger->info("ios channel list".json_encode($ios_channel_list));
        
        $this->logger->info("android channel list".json_encode($android_channel_list));
        
        $extras = array(
            "title" => $title,
            "vid" => $videoinfo['vid'],
            "username" => $userinfo['name'],
            "nickname" => $userinfo['nickname'],
            "permission" => $videoinfo['permission'],
            "living" => $videoinfo['living'],
        );
        
        if(count($ios_channel_list) > 0){
            $this->iosPushByRegistId($ios_channel_list,$title,$extras,$alert = $title);
        }

        if(count($android_channel_list) > 0){
            $this->androidPushByRegistId($android_channel_list,$title,$extras,$alert="");
        } 

registrationID : 191e35f7e043f7823ce


#4

我需要msgid

获取客户端日志的方法:
将你的手机连上Xcode,在Xcode上面的菜单栏上,选window->device,点击你的设备,在下方有个三角箭头,点击下,就能看到打印了。


(杨) #5

msgid:457877015
设备:ios
环境:开发
消息类型:自定义类型.

通知类型可以收到,自定义类型收不到


#6

噢!原来你发的是自定义消息!
自定义消息是在前台展示的,展示方式需要你们自己代码实现哦
你看看这两个的区别


(杨) #7

您好,这个我看了,我们公司从后台推得不是自定义消息吗?关键角标收到了,没有在通知中心显示


#8

我的意思是:
你推送通知消息,app处于后台,消息就在通知栏里面显示了
你推送自定义消息,app处于后台,消息是不会显示的,必须你点击进入app,才会显示。


(杨) #9

我们用的你们的iosPushByRegistId这个方法不算是自定义吧,不太懂里面的规则


(杨) #10

我们推得是iOSapi推送的通知,刚才抱歉,说错了,您看一下我们的代码是不是写的有问题后台


#11

但你提供给我的msgid确实推送的自定义消息呢


(杨) #12

收到的chnnelID:191e35f7e043e6043a3
msg_id:458742612
环境:开发
后台推送,api通知

付后台日志:
2016-08-22 17:53:03.776475 [INFO ] [root] ios channel list[“191e35f7e043e6043a3”,“1a1018970aa0fe98873”]
2016-08-22 17:53:03.776588 [INFO ] [root] android channel list[]
2016-08-22 17:53:03.924979 [INFO ] [root] send success{“body”:{“sendno”:“0”,“msg_id”:“458742612”},“http_code”:200,“headers”:{“rateLimitLimit”:“600”,“rateLimitRemaining”:“599”,“rateLimitReset”:“60”}}

前端效果:不显示没有通知收到


(杨) #13

能不能查一下是不是推送成功一个不是191e35f7e043e6043a3这个设备


#14

推送成功的不是这个测试设备,这个设备显示错误:推送环境与用户环境不一致


(杨) #15

亲,能说一下我的推送环境是什么环境,用户环境是什么环境


#16

你的推送环境是生产环境,你的用户环境是什么,得看你app是怎么打包的
环境问题看这两个文档:
SDK注意事项789点
iOS常见问题


#17

大兄弟,你用的好像不是我们官方 SDK 啊,官方SDK及源码