【问题标题】:App Engine Connected Android : failure connection refusedApp Engine Connected Android:失败连接被拒绝
【发布时间】:2012-06-01 19:25:51
【问题描述】:

我一直按照这些说明 https://developers.google.com/eclipse/docs/appeng_android_create_project 设置一个应用引擎连接的 android 项目。

我有 gwt 2.4、android sdk 18、app engine plugin 1.6.6、eclipse indigo 和 windows 7。我还注册了一个 c2dm 帐户。我正在尝试在运行 android 4 的 Galaxy nexus 上运行该项目,因为我似乎无法将帐户添加到模拟器以“连接到云”。

当我点击“Say Hello”时,我最终会收到错误消息:

Failure: Connection to http://192.168.2.2:8888 refused

根据ipconfig,192.168.2.2其实是我的ip地址。

我知道App Engine Connected Android : can't make sample project work properly 这个问题,但是他的错误显示连接到 127.0.1.1 失败,而我的错误显示我的实际 IP 地址。尽管如此,我已经尝试使用我的本地和公共 IP 地址的解决方案,但总是得到相同的错误,只是使用不同的 IP 地址。

有人可以帮忙吗?

编辑:

在彼得指出我的 IP 地址问题后,我决定快速部署到应用引擎,看看它是否在那里工作。我成功部署,然后在我的手机上运行了 android 部分。单击强制关闭后,应用程序会说“正在连接...”很长时间,然后强制关闭。在 logcat 中,我收到错误消息:

06-01 18:05:14.678: E/AndroidRuntime(11328): FATAL EXCEPTION: main
06-01 18:05:14.678: E/AndroidRuntime(11328): java.lang.RuntimeException: Error receiving broadcast Intent { act=com.testprojectfourteen.UPDATE_UI flg=0x10 (has extras) } in com.testprojectfourteen.TestProjectFourteenActivity$1@41826430
06-01 18:05:14.678: E/AndroidRuntime(11328):    at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:737)
06-01 18:05:14.678: E/AndroidRuntime(11328):    at android.os.Handler.handleCallback(Handler.java:605)
06-01 18:05:14.678: E/AndroidRuntime(11328):    at android.os.Handler.dispatchMessage(Handler.java:92)
06-01 18:05:14.678: E/AndroidRuntime(11328):    at android.os.Looper.loop(Looper.java:137)
06-01 18:05:14.678: E/AndroidRuntime(11328):    at android.app.ActivityThread.main(ActivityThread.java:4340)
06-01 18:05:14.678: E/AndroidRuntime(11328):    at java.lang.reflect.Method.invokeNative(Native Method)
06-01 18:05:14.678: E/AndroidRuntime(11328):    at java.lang.reflect.Method.invoke(Method.java:511)
06-01 18:05:14.678: E/AndroidRuntime(11328):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
06-01 18:05:14.678: E/AndroidRuntime(11328):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
06-01 18:05:14.678: E/AndroidRuntime(11328):    at dalvik.system.NativeStart.main(Native Method)
06-01 18:05:14.678: E/AndroidRuntime(11328): Caused by: java.lang.NullPointerException
06-01 18:05:14.678: E/AndroidRuntime(11328):    at android.app.PendingIntent.getActivity(PendingIntent.java:195)
06-01 18:05:14.678: E/AndroidRuntime(11328):    at com.testprojectfourteen.Util.generateNotification(Util.java:119)
06-01 18:05:14.678: E/AndroidRuntime(11328):    at com.testprojectfourteen.TestProjectFourteenActivity$1.onReceive(TestProjectFourteenActivity.java:82)
06-01 18:05:14.678: E/AndroidRuntime(11328):    at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:728)
06-01 18:05:14.678: E/AndroidRuntime(11328):    ... 9 more

【问题讨论】:

  • 在行首放四个空格,使文本看起来像代码。

标签: android google-app-engine


【解决方案1】:

192.168.2.2private IP address,在 Internet 上不可见。 C2DM 是 google 运行的公共服务,它尝试连接到您的私有 IP,但无法访问它,因此出现错误。

解决方法是找出你路由器的internet-visible IP,并在上面设置port-forwarding(这取决于路由器)。

【讨论】:

  • 谢谢!这很有意义。我将尽快设置端口转发。现在我认为将其部署到应用程序引擎并查看它是否在那里工作可能会更容易。我部署没有问题,但随后在我刚刚提出的问题中得到了 logcat 错误。我猜你不知道那是什么意思吗? :) :)
  • 您注册 C2DM 了吗? how2code.wordpress.com/2011/11/23/…
  • 是的,我做到了。我注册了我的个人 gmail 帐户。这也是我在创建新的应用引擎连接项目时输入的帐户。但是,当我注册时,它要求我输入包名。我给它一个不同应用程序的包名称。我需要重新注册并给它这个应用程序的包名吗?
  • 另外,我的个人 gmail 帐户(我为 c2dm 注册的)也是存储在我手机中的那个。当它说“连接到云”时,我点击了那个。可以吗?
  • 啊,你的链接回答了这个问题:) 编辑:实际上我认为这仅适用于非 gmail...
猜你喜欢
  • 2014-10-29
  • 2019-08-22
  • 2014-01-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-22
  • 2014-09-13
  • 1970-01-01
相关资源
最近更新 更多