NanoHttpd是Github上的一个开源项目, 通过下载jar包,新建一个android project, 使用 extends NanoHTTPD 就可以实现一个apk 当WebServer。
示例为显示访问此server的Useragent 和将UA写入文件 import fi.iki.elonen.NanoHTTPD; public class UAsetHttpServer extends NanoHTTPD { public UAsetHttpServer() throws IOException { super(8080); } @Override public Response serve(IHTTPSession session) { System.out.println("UAsetHttpServer, method serve start-----"); String msg = "<html><body>\n"; msg += "<script> function getUa() {return navigator.userAgent; } document.write('browser.ua = ' + getUa()); </script>"; msg += "</body></html>\n"; if(session.getUri().equals("/")){ String ua = session.getHeaders().get("user-agent"); System.out.println("UAsetHttpServer, session.getHeaders()-----"+ua); try{ File file = new File("/data/local/tmp/useragent.txt"); FileOutputStream fs = new FileOutputStream(file); OutputStreamWriter ow = new OutputStreamWriter(fs); ow.write(ua); ow.close(); System.out.println("UAsetHttpServer, save useragent to file successfully."); }catch(Exception e){ System.out.println("UAsetHttpServer, save useragent to file error:"+e.getMessage()); } } return new NanoHTTPD.Response(msg); } }
调用的地方:
public class AndroidBrowserUAActivity extends Activity { private UAsetHttpServer server; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override protected void onResume() { super.onResume(); try { server = new UAsetHttpServer(); server.start(); } catch (IOException e) { e.printStackTrace(); server = null; } } @Override protected void onDestroy() { super.onDestroy(); if (server != null) { server.stop(); } } }
当以上的Server起来之后,使用地址http://127.0.0.1:8080/就可以访问。
相关推荐
android使用nanohttpd搭建httpserver实现文件上传及HTML5播放视频,亲测可用。 内含最新nanohttpd-all-2.3.1.jar,直接下载代码引入到eclipse就能用。HTML5播放使用的时候,需要把工程的movie.mp4拷贝到SD卡根目录下...
首先,`Android Studio`是Google推出的一款强大的Android应用程序集成开发环境,它提供了代码编辑、调试、构建、测试等一系列功能,极大地提高了开发效率。 `NanoHTTPD`是一个轻量级的Java HTTP服务器库,它的特点...
在Android平台上,构建一个HTTP服务器可以为各种应用场景提供便利,比如本地数据共享、调试或测试网络请求。NanoHTTPD是一个轻量级、易用的Java HTTP服务器库,它允许开发者在Android应用程序中快速搭建自己的HTTP...
总的来说,通过Android NanoHttpd,开发者可以轻松地在Android设备上搭建一个简单的HTTP服务器,为H5页面和其他客户端提供webservice功能。同时,配合AIDL,你可以实现更复杂的跨进程通信,构建更强大的Android应用...
总结来说,通过Android的Socket编程,我们可以构建一个简单的HTTP服务器,允许外部设备访问本地存储的HTML文件。这个过程中涉及Android权限管理、网络编程、HTTP协议解析以及可能的文件I/O操作。同时,结合特定的...
描述中提到的“android httpserver 的简单实现 可以传输文字 查看手机文件目录等”表明这个HTTP服务器不仅能够处理文本数据的传输,还具备浏览和访问手机本地文件系统的能力。这可能是通过创建一个简单的Web界面,让...
标题"android http server 服务"指的可能是在Android设备上构建一个小型的HTTP服务器,使得设备可以作为一个服务端,接收和处理来自其他设备的HTTP请求。 描述中的场景涉及到两台Android设备,一台作为热点主机,另...
NanoHttpd是一个轻量级的HTTP服务器库,适用于Android开发者在移动设备上快速搭建本地服务器。这个库使得在Android应用中实现简单的...通过理解并实践NanoHttpd的使用,你可以提升在Android平台上构建网络服务的能力。
在Android平台上构建一个手机端服务器,能够实现诸如访问设备数据、在线播放手机视频等功能,是一项技术挑战但也充满可能性。这个项目以"androidasync"作为标签,意味着它可能使用了AndroidAsync库,这是一个专为...
在Android平台上创建一个HTTP服务器是一项有趣的挑战,因为它涉及到将服务器端的功能集成到移动设备中。在本篇中,我们将深入探讨如何在Android设备上搭建一个HTTP服务器,特别关注使用i-jetty-3.1库来实现这一目标...
在Android平台上,构建一个HTTP服务器可以为应用程序提供各种服务,如本地数据共享、测试网络请求或者作为调试工具。本文将详细介绍如何使用nanohttpd库在Android设备上实现一个简单的HTTP服务器。 nanohttpd是一个...
1. **服务器端框架**:Android Web服务器的实现通常依赖于特定的服务器端框架,如NanoHTTPD或Apache MINA。这些框架提供了处理HTTP请求、响应、文件服务等功能的基础。 2. **Socket通信**:HTTP是基于TCP/IP的协议...
最后,`nanohttpd-2.3.1`版本的jar文件包含了NanoHttpd库的这个特定版本,可以直接在Android项目中作为依赖使用,无需构建源代码。在Android Studio中,可以通过添加以下依赖项到`build.gradle`文件来引入: ```...
在Android平台上,构建一个HttpServerTest项目涉及到许多关键知识点,主要涵盖了网络编程、服务器搭建以及资源分享等。本文将深入探讨这些技术要点。 首先,我们要理解Android系统如何支持HTTP服务器的实现。...
在手机上有一个功能,但是需要使用电脑控制什么时候开始这个功能,然后上网搜索,找到了AndServer可以满足要求,我只是实现了简单的功能,如果感兴趣的话,可以深入的研究一下。 地址如下:...
Android实现HttpServer示例代码解析 HttpServer 的必要性 在 Android 系统中,需要实现一个微型服务器来实现实时接收数据的功能。这种需求在最近的项目中非常常见。为了实现这个功能,我们需要选择合适的服务器...
android_httpserver Android版本的HttpServer Android版本的HttpServer Android本地的httpServer服务器 支持get和post请求 处理方式和参考TestSample 核心代码参考lib_httpserver
Android Studio 读取SQL Server数据库中的数据,创建线程来获取SQL Server中的数据 ,在配置文件Androidmanifest.xml中添加<uses-permission android:name="android.permission.INTERNET"/>,否则无法网络连接的 亲...
本话题聚焦于如何让Android应用程序通过Web服务与C#构建的SQL Server数据库进行交互。这个过程涉及到多个技术栈,包括Android客户端开发、Web服务设计(通常为SOAP或RESTful API)以及后端的C#编程和SQL Server...