private void registerClient()
{
try {
GCMRegistrar.checkDevice(this);
GCMRegistrar.checkManifest(this);
regId = GCMRegistrar.getRegistrationId(this);
if (regId.equals(""))
{
registrationStatus = "Registering...";
GCMRegistrar.register(this, "517739810110");
regId = GCMRegistrar.getRegistrationId(this);
registrationStatus = "Registration Acquired";
sendRegistrationToServer();
}
else
{
registrationStatus = "Already registered";
}
}
catch (Exception e)
{
e.printStackTrace();
registrationStatus = e.getMessage();
}
}
对于某些 Android 设备,我可以从 GCM 成功获取注册 ID,但不是所有 Android 设备。GCM 会为某些 Android 设备返回空的注册 ID。我使用 GCM.jar 文件作为返回注册 ID 的第三方工具。所有权限都在清单文件中正确定义。发件人 ID 正确。API 密钥是正确的。