2

在 Google Code APIs 控制台上设置了一个项目,并在“服务器应用程序的密钥(具有 IP 锁定)”处有一个服务器密钥。我正在尝试使用“API 密钥”和存储在数据库中的一个注册 ID 向 GCM 设备发送推送通知。

对于服务器端,我正在使用 Zend_Mobile_Push_Gcm 并且有这样的东西:

$token = 'REGISTRATION ID';
$apiKey = 'API KEY';

//Send test push
$message = new Zend_Mobile_Push_Message_Gcm();
$message->setId(time());
$message->addToken($token);
$message->setData(array('foo' => 'bar', 'bar'=>'foo'));

$gcm = new Zend_Mobile_Push_Gcm();
$gcm->setApiKey($apiKey);

try {
    $response = $gcm->send($message);
} catch (Zend_Mobile_Push_Exception $e) {
    die($e->getMessage());
}

在应用程序方面,我使用了 GCM 演示,目前正在服务器服务上注册它的注册 ID。

我无法发送推送,总是收到 401 错误。已完成故障排除并在http://developer.android.com/guide/google/gcm/gcm.html#auth_error上使用 CLI 测试行尝试了我的 API KEY 和注册 ID,但没有成功。

任何帮助,将不胜感激。

4

1 回答 1

0

我意识到这是不久前发布的,但请务必使用您的服务器 API 密钥,而不是您的 android API 密钥。

尝试将 PHP 中的 Android API 密钥与 Zend 一起使用时,我遇到了同样的问题。

于 2015-03-04T10:57:26.830 回答