2010-10-26 37 views
1

我试图在引导完成后立即运行我的服务。 我知道如何做到这一点,但是这是概率:引导已完成问题上的连接问题

的服务,只要它获得启动完成意图, 但我的服务不能打开任何HttpUrlConnections运行

我得到这个错误:

10-26 09:53:50.400: ERROR/HttpHandler(1165) Host is unresolved: my.host:8080 

假设这台主机工作正常,只要我用启动程序启动后手动启动我的服务。

设备启动时连接有问题吗?也许它尚未准备好在启动时打开连接?

有什么想法?或者我该如何解决?

谢谢,

ray。

回答

0

最后我解决了这个问题,它使用了一个延迟20000秒的处理程序,设备管理完成正确启动,然后它可用于联网。

谢谢大家。

+0

'SharedPreferences'会比硬编码20,000更好。但我相信你处理了它。谢谢 :-) – 2012-02-28 18:01:07

2

建议您听广播意图android.net.connectivity.CONNECTIVITY_ACTION。有一个working example如何在这里做到这一点在stackoverflow。

+0

是的,但是如何结合CONNECTIVITY_ACTION和BOOT_COMPLETED? – rayman 2010-10-26 08:50:53

+0

我想你会使用BOOT_COMPLETED来启动你的服务,然后手动为CONNECTIVITY_ACTION注册一个接收者。 (注意:因为你在后台,所以你应该尊重和听ACTION_BACKGROUND_DATA_SETTING_CHANGED ...) – 2010-10-26 09:03:28