首先.去极光的官方文档https://docs.jiguang.cn/下载极光推送的类!
下载后放到你的公共目录下!
放好后,我先来说一下关于推送这方面需要用到的东西!!
1:别名(alias)),首先别名是一个相当于给每一个用户标识的名字,一个用户只能有一个别名而且是唯一的,如果你换了其他的别名,当前别名会覆盖!
2:标签(tags),标签.所谓的推送标签,是可以给每个用户立一个或多个的标签!! 就相当于QQ群一样,你在每个群的标识都是唯一的,不可重复.这样如果叫到你的名字标识的时候.就可以直接认定是你这个人!
3:registrationID,这个ID是每部手机的设备号id,每一个手机只有一个并且是唯一!
registrationID和tags必须保存到数据库!因为registrationID是设备号id,每一次登录的时候要更新一下数据库的registrationID!tags是标签,每次给用户立标签的时候都得在数据库更新一遍标签! 对于那个别名,最好是用用户的ID,我这边是,如果你想自己立也可以!! 不过用户的ID也是唯一的,所以用用户的id的话就不用给这个别名建立一个字段了,所以这方面会省很多事!!
下边是我自己封装的一个小小的类方法!
$app_key= "极光账号的app_key";
$this->$master_secret= "极光账号的master_secret";
$this->$client= new JPush($this->app_key, $this->master_secret);
}//获取alias和tags
public function getDevices($registrationID){$result = $this->client->device()->getDevices($registrationID);
return $result;
}
//添加tags
public function addTags($registrationID, $tags){$result = $this->client->device()->addTags($registrationID,$tags);
return $result;
}//移除tags
public function removeTags($registrationID, $tags){$result = $this->client->device()->removeTags($registrationID,$tags);
return $result;
}
//标签推送
public function push($tag, $alert){$tags = implode(",", $tag);
$this->client->push()
->setPlatform(array('ios', 'android'))
->addTag($tags)//标签
->setNotificationAlert($alert)//内容
->send();
}//别名推送
public function aliasPush($alias, $alert){$alias = implode(",",$alias);
$this->client->push()
->setPlatform(array('ios', 'android'))
->addAlias($alias)//别名
->setNotificationAlert($alert)//内容
->send();
}
}
上边是我封装的一个小类,就是简单的给用户立标签,获取用户的标签,标签推送和别名推送!
简单引用:
$Jpushs = new Jpushs();
$tag = array(
"123"
);
$alert = "标签推送";
$Jpushs->push($tag,$alert);
封装好后引用就这么些代码!到这里推送就可以成功了!
【推送|php极光推送详解过程】
这就是简单的PHP推送! 如有不懂的可以评论!帮到忙的点个赞 ~ 谢谢!
推荐阅读
- 对GO切片的理解
- 小程序商城网站开发秒杀模块篇
- 盲盒购物网站系统开发建设 第三篇
- Netty核心概念之ChannelHandler&Pipeline&ChannelHandlerContext
- 简单的线程池实现多线程对大文件的读取
- SSH 端口转发与 SOCKS 代理
- Ubuntu16.04/Scala2.11.8安装教程
- 学习PHP中的高精度计时器HRTime扩展
- 使用OpenResty+Lua实现灰度测试(金丝雀)
- 使用源码编译安装PHP扩展