OTA的意思是Over The Air,通过无线网络下载和安装J2ME应用程序的方案。搭建OTA服务器是比较简单的,但是做一个完整的OTA的服务器却非常复杂,因为这要设计到软件的管理,下载的计费,安全认证等多个问题。本文主要目的是讲述OTA下载的主要原理,搭建OTA服务器的步骤。
当我们的手机通过无线网络发出请求要求下载相关的软件的时候,通常我们是访问了特定的页面。这可以是wml写的。我们首先发送获得JAD文件的请求,Server接收到请求后把JAD文件发送给客户端,客户端根据MIDlet-Jar-URL的信息请求下载jar文件,Server再次相应并把jar包传输给客户端,客户端开始安装软件。
下面介绍如何搭建OTA环境,我们仍然使用TOMCAT作为web服务器,首先你要确保你的ip地址能被外界访问到,编辑TOMCAT_HOME/conf/web.xml
看他是否支持下面两种MIME类型
JAD text/vnd.sun.j2me.app-descriptor
JAR application/java-archive
如果不支持的话在文件后面添加下面的内容
<mime-mapping>
<extension>jad</extension>
<mime-type>text/vnd.sun.j2me.app-descriptor</mime-type>
</mime-mapping>
<mime-mapping>
<extension>jar</extension>
<mime-type>application/java-archive</mime-type>
</mime-mapping>
下面你应该准备一个wml的文件和一个jad文件和相关的jar文件。必须注意jad文件的地址应该是绝对地址指向jar。例如MIDlet-Jar-URL: http://222.28.218.222:8088/HelloWorldMIDlet.jar
down.wml的文件内容如下
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card title="Welcome" id="main">
<p>Software center:</p>
<p align="left">
<a href="HelloWorldMIDlet.jad">
HelloWorld</a></p>
</card>
</wml>
把这三个文件一起放到TOMCAT_HOME/webapps/root/下面,从手机上访问http://222.28.218.222:8088/down.wml就可以开始下载HelloWorld应用程序了。最后给出OTA下载的流程图
点击查看大图(出处:http://www.knowsky.com)