欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

改写百度云推送SDK,PHP PEAR 包:Services

程序员文章站 2022-04-27 12:00:49
...

iPhone使用apple push很方便,而Android很多厂商删除了google push,而且google在大陆连不上,所以要用别的办法。 Android常见的推送服务商有:极光推送(https://www.jpush.cn/)、百度云推送。 app加入推送的lib,会有一个常驻后台进程,通过推送服务商推

iPhone使用apple push很方便,而Android很多厂商删除了google push,而且google在大陆连不上,所以要用别的办法。

Android常见的推送服务商有:极光推送(https://www.jpush.cn/)、百度云推送。

app加入推送的lib,会有一个常驻后台进程,通过推送服务商推送消息,无需启动app。

百度云推送官方文档:http://developer.baidu.com/cloud/push

对于这种第三方库,PHP官方称之为PEAR,需要按照PEAR标准开发(标准URI)。

PEAR的优势:一键安装到php/lib/php目录,require即可使用,很方便。

百度推送的官方sdk不符合PEAR标准,使用不便,不想为百度重写,所以我改写了一下(sdk中带的很多垃圾没去改写),安装步骤如下:

pear channel-discover sinkcup.github.io/pear
pear install sinkcup/Services_Baidu_Push

使用步骤:

1、注册登录百度开发者后台,获得api key和secret key,在app里添加lib。

2、demo(参考https://github.com/sinkcup/Services_Baidu_Push/blob/master/tests/Services/Baidu/PushTest.php)

php
require_once 'Services/Baidu/Push.php';

$apiKey = 'asdf';
$secretKey = 'qwer';
$c = new Services_Baidu_Push($apiKey, $secretKey);
$msg = array(
    "description"=> "testSimplePushToAndroid群发",
    "notification_basic_style"=>7,
);
$r = $c->simplePushToAndroid($msg);
var_dump($r);
exit;
?>

输出:

bool(true)

我的PEAR 频道:http://sinkcup.github.io/pear/

项目源代码:https://github.com/sinkcup/Services_Baidu_Push