Android http服务器不能从networking上的其他设备间歇性地访问

我正在使用NanoHTTPD在Android应用程序中呈现Web服务器。 我正在使用wifi锁来保持networking的活跃,并使用CPU锁来保持CPU唤醒,并通过前台服务保持它运行,以防止它死亡。

我发现的是,它可以从其他设备访问半个小时,然后半小时内无法访问。 每当它变得无法访问,我可以在Android设备上打开safari浏览到0.0.0.0:30000,并validation服务器确实在运行。 而且我也检查,以确保无线networking连接,它似乎是。

任何build议在哪里看?

Solutions Collecting From Web of "Android http服务器不能从networking上的其他设备间歇性地访问"

我不知道停止工作的确切原因。 有办法保持服务运行,但如果这可以帮助你在你的活动onCreate尝试这一行的代码

getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 

debuggingbuild议

当它变得不可访问时,你可以validationnetworking连接是否正在工作? 不只是在用户界面中显示为“已连接”,而是实际使用HTTP连接到远程服务器。 当你这样做的时候,你的本地HTTP服务器突然变得可以从远程访问吗? 戳,你可以远程观看你的服务器:

 watch curl http://{android_ip}:3000/ 

你保持屏幕或屏幕熄灭? 这可能是PowerLock的一个错误的实现。

这是否与其他无线路由器发生? 这可能是Wifi省电模式(PSM)的一个问题。