下载搜学网app
查学校 查学区 查辅导 查饭桌 查询中考数据
logo 点击咨询

android平台嵌入式web server的实现方法


     “数据采集器”基于android平台开发,其中集成了一个嵌入式的web  server。linux平台上的嵌入式web server有不少,但是能够支持java的不多。常见的web服务器主要有:Boa、thttpd、lighttpd、appweb、apache等。下图是从网上下载的对这些web服务器的详解和对比。 

sE1lRP3.png

应该还有一个叫ijetty,也是开源的,感谢世界开源组织的无私奉献。

        鉴于以上几款都不支持java,本次开发中参考了另一款开源的web server:Atjeews。这是国外的一个大神写的,对于java的支持非常好,当然了受限于嵌入式设备的资源,对于大型的web框架是支持不了的,基本的serverlet没问题,运行的非常完美。而且,还支持ssl(顶礼膜拜)。

      Atjeews的使用并不复杂,在pc上编译出来的war文件,只需要经过一个简单的转换即可流畅运行。之所以需要进行转换,是一位内android上的java虚拟机并不能执行普通的bytecode代码,需要转成与apk相同的代码格式才可以执行。

     还有一点需要额外注意的是,android的权限体系基于linux的权限体系构建,某些功能是受限的,比如对于80端口的占用问题。由于工期较紧,没有进行特别深入的研究,而是采用了一种变通的方式,实现了模拟的80端口访问。

此外,设备运行一段时间以后,可能会出现“IP地址遗忘”的问题,解决方法就是,绑定了一个保留IP地址,与设备设定的接入局域网的IP地址同时工作,在遗忘了设定的地址以后,仍然可以通过保留的IP地址访问web网页。



评论