首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Android中创建HTTP服务器?

如何在Android中创建HTTP服务器?
EN

Stack Overflow用户
提问于 2011-06-13 18:52:36
回答 6查看 145K关注 0票数 124

我想在Android中创建一个简单的HTTP服务器,为客户端提供一些内容。

对如何构建服务器或使用任何现有的库有什么建议吗?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2011-06-13 18:57:58

考虑一下这个:https://github.com/NanoHttpd/nanohttpd。非常小,用Java写的。我使用它没有任何问题。

票数 138
EN

Stack Overflow用户

发布于 2013-05-21 12:37:35

NanoHttpd在安卓上就像一个护身符--我们有生产中的代码,用户手中的代码,这些代码都是建立在它之上的。

许可证绝对允许NanoHttpd的商业使用,没有任何“病毒式”影响。

票数 25
EN

Stack Overflow用户

发布于 2016-05-10 02:12:44

这可以像在JavaSE上一样,使用ServerSocket来完成。这个类在Android上可用。android.permission.INTERNET是必需的。

唯一更棘手的部分是,您需要一个单独的线程在ServerSocket上等待,为来自其accept方法的子套接字提供服务。您还需要根据需要停止和恢复此线程。最简单的方法似乎是通过关闭ServerSocket来杀死等待的线程。如果您只需要一个服务器,而您的activity在顶部,那么启动和停止ServerSocket线程可以非常优雅地绑定到activity生命周期方法。此外,如果服务器有多个用户,最好在派生线程中为请求提供服务。如果只有一个用户,则可能没有必要执行此操作。

如果您需要告诉用户哪个IP是监听的服务器,可以使用NetworkInterface.getNetworkInterfaces(),this question可能会说出一些额外的技巧。

最后,here可能有完整的最小的安卓服务器,它非常短,简单,可能比其他答案中推荐的最终用户应用程序更容易理解。

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6329468

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档