我收到了[C2DMReg] handleRequest catch
org.apache.http.auth.AuthenticationException
试图从谷歌服务器获取注册ID。这是logcat跟踪:
02-24 19:10:26.951: WARN/DefaultRequestDirector(122): Authentication error: Unable to respond to any of these challenges: {}
02-24 19:10:26.969: DEBUG/C2DMRegistrar(122): [C2DMRegistrar.24] register: http error 401
02-24 19:10:26.969: ERROR/C2DMRegistrar(122): [C2DMReg] handleRequest caught org.apache.http.auth.AuthenticationException
但是我能够获得注册ID。但是当我尝试将msg发送到设备时,我得到了一个异常
javax.net.ssl.SSLHandshakeException:无法验证SSL证书 for:https://android.apis.google.com/c2dm/send
可能是什么原因?已经24小时我注册了我的C2DM服务的电子邮件ID。我收到了他们的邮件。但它仍然没有用。
答案 0 :(得分:0)
Android设备c2dm似乎只接受* .apis.google.com证书。尝试按照此处所述设置假的HostnameVerifier:
http://groups.google.com/group/android-c2dm/browse_thread/thread/49e902657d76a530
<强>更新强>
有一个名为ChromeToPhone的项目,它将URL从浏览器插件发送到AppEngine后端,然后通过C2DM发送到Android手机。
可能有助于查看他们的来源,了解他们如何在AppEngine上实施C2DM:http://code.google.com/p/chrometophone/source/browse/#svn%2Ftrunk%2Fappengine