BlackBerry 上实现OTA(Over The Air)

BlackBerry 上实现OTA(Over The Air)

在 BlackBerry 上实现 OTA(Over The Air)

1 准备 tomcat


服务器使用 tomcat 。一般在测试的机器上,你可能也安装了 MDS 。MDS( Mobile Data System )也是一个服务器,默认使用了 8080 端口。这和 tomcat 的默认工作端口相冲突。所以,最好更改 tomcat 的工作端口。

    1.1 修改端口

找到 conf 目录下的 server.xml 文件,可能有如下标志:

<Connector port="8080" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />

更改 8080 为 8081 或者其他的可用端口。

    1.2 添加文件类型支持

Web服务器必须为.cod文件和.jad文件设置MIME类型。
对于.cod文件,MIME类型是application/vnd.rim.cod。
对于.jad文件,MIME类型是text/vnd.sun.j2me.app-descriptor。
对于.jar文件,MIME类型是application/java-archive.

打开conf 目录下的 web.xml 文件,添加如下类似的三个描述:

<  mime-mapping  >  
< extension > cod </ extension >
< mime-type > application/vnd.rim.cod </ mime-type > 
</ mime-mapping >


2 准备下载文件

    2.1 使用JDE生成的 jad 文件

OTA过程中,其实只要在页面连接中指定 jad 文件的地址就可以了。下载 jad ,BlackBerry 浏览器会自动读取 jad 文件的内容找到对应的 cod 文件或者 jar 文件。要是针对 BlackBerry 应用,有 cod 文件就可以了。JDE会生成的 jad 文件中,也有 jar 文件大小和位置的描述,也会生成 jar 文件。 但是 jar 文件对于 BlackBerry 应用来说这不是必须的。

    2.2 准备供下载 cod 文件

这一步,有点奇怪。我一直无法将 JDE 生成的 jad 文件中对于 cod 文件的描述和JDE实际生成 cod 文件对应起来,因为文件个数和大小总是无法对应。后来使用了前面工具才偶然发现了 jad 文件中对应的 cod 文件。需要先安装签名工具,要是没有安装签名工具,就是下载到手机上,也是无法使用的。

我注意到,点击 全名的 cod 文件 (就是没有跟随有数字的 cod 文件,有些 cod 文件有这样的形式 name-1.cod) 会弹出一个窗口,显示文件的状态,指示哪些需要签名,哪些已经签名。请求签名,输入密码,验证后,签名成功,可以看到,当前文件夹下生成了一个名字随机的文件夹,不要关闭签名窗口,要是关闭,这个新生成的名字随机的文件夹就会消失。进入这个文件夹,可以看到一些 cod 文件,将里面的文件拷出,这些 cod 文件和 jad 文件中的描述是一致。将这些 cod 文件拷贝到 tomcat 中用于放置OTA资源的文件目录。

3 一个简单的例子

在 tomcat 的 webapps 文件夹下 创建 ota 文件夹:

    3.1. 在 ota 文件夹下,制作一个简单的 index.jsp:

<html><body><center>
Now time is: <%=new java.util.Date()%>
<br />
<a href="res/yourapplication.jad">yourapplication</a>
</center></body></html>

    3.2. 准备一个 ota/WEB-INF/web.xml

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>
<display-name>My Web Application</display-name>
<description>
A application for test.
</description>
</web-app>

    3.3. 将上一步准备好的 cod 文件和 jad 文件都放在 ota/res 文件夹下

可能有如下文件: yourapplication.cod, yourapplication-1.cod, yourapplication-2.cod, yourapplication.jad

    3.4. 在 BlackBerry 上开启浏览器

打入 http://214.2.13.4/ota ,更改成你自己主机的ip。点击连接,浏览器会自动开始OTA过程。

你可能感兴趣的:(BlackBerry 上实现OTA(Over The Air))