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/