我想在Android中创建一个简单的HTTP服务器,以向客户端提供一些内容。关于如何构建服务器或使用任何现有库的任何建议?
3 回答
偶然的你
TA贡献1841条经验 获得超3个赞
NanoHttpd在Android上的魅力十足-我们已经在生产代码中,在用户手中建立了代码。
该许可证绝对允许NanoHttpd的商业使用,而没有任何“病毒”的含义。
宝慕林4294392
TA贡献2021条经验 获得超8个赞
可以使用ServerSocket来完成此操作,与JavaSE相同。此类在Android上可用。android.permission.INTERNET是必须的。
唯一比较棘手的部分是,您需要在ServerSocket上等待一个单独的线程,以服务来自其accept方法的子套接字。您还需要根据需要停止并恢复该线程。最简单的方法似乎是通过关闭ServerSocket来杀死正在等待的线程。如果您仅在活动处于顶部时才需要服务器,则可以将ServerSocket线程的启动和停止与活动生命周期方法紧密地联系在一起。同样,如果服务器有多个用户,则最好在派生线程中处理请求。如果只有一个用户,则可能没有必要。
如果需要告诉用户服务器在哪个IP上监听,请使用 NetworkInterface .getNetworkInterfaces(),此问题可能会告诉您其他技巧。
最后,这里可能有一个完整的最小Android服务器,它非常简短,简单,并且比最终用户应用程序更容易理解,这在其他答案中建议。
- 3 回答
- 0 关注
- 743 浏览
添加回答
举报
0/150
提交
取消