有些设备并不允许同时打开多个网络连接,但是有的时候我们的应用程序可能需要同时打开多个连接。这样可以提高效率或者用户体验,但是应用程序应该尽量避免依赖多连接这一特性,因为对于不支持多个连接的设备你的程序可能会崩溃。
解决这一问题的办法是在JAD文件中标记出设备能够同时打开的连接数量。
那么如何能够得到设备支持的最大的连接数的,首先你可以去参考设备的规范。比如Motorola的设备规范中一般都列出了能够支持的连接类型,比如HTTP Socket等。以及设备能够同时打开的最大连接数。对于在规范中没有说明的那么我们只能编写一个测试用的MIDlet,先测试出这个特性。然后把他写到JAD文件中供以后使用。
例如下面的JAD文件中就标记了最大连接的数量。
MIDlet-1: Foo, , Foo MIDlet-Jar-Size: 7063 MIDlet-Jar-URL: foo.jar MIDlet-Name: Foo MIDlet-Vendor: Yoyodyne Inc. MIDlet-Version: 1.0 MicroEdition-Configuration: CLDC-1.1 MicroEdition-Profile: MIDP-2.0 Device-Max-Connection: 3
在应用程序初始化的时候可以读取这个数量,注意这个数量应该存储为全局变量,
这样方便在人的地方访问。初始化的工作如下,
/* Initialization code */
String deviceMaxConnectionString = getAppProperty
("Device-Max-Connection");
int deviceMaxConnection = Integer.parseInt
(deviceMaxConnectionString);
int openConnection = 0;
同时创建多个网路连接,如下:
if (openConnection < deviceMaxConnection) {
HttpConnection connection = (HttpConnection) Connector.open
(uri);
openConnection++;
} else {
// Fail to create connection.
}
关闭网络连接
connection.close();
openConnection--;
计算连接的数量,int connection = 0;
try {
while (true) {
Connector.open("http://tools.ietf.org/html/rfc262"
+ connection);
}
} catch (Exception e) {
// Max number reached here
}
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- 网络管理实用手册 (22210篇文章)
- 网络故障手册 (14340篇文章)
- 网络组网专题 (12373篇文章)
- 网络建设 (13908篇文章)
- Java环境安装配置 (5571篇文章)
- Java编程开发手册 (8196篇文章)
- JAVA网络 (456篇文章)
- Java应用开发篇 (1071篇文章)
- Java网络及通讯编程 (657篇文章)
- J2EE Server下的第一个EJB程序(图文进阶篇 (509次浏览)
- J2EE实战留言本(升级应用篇) (329次浏览)
- 如何开发基于JBoss的J2EE应用 (110次浏览)
- J2ME Mobile 3D入门教程(三)碰撞初步 (107次浏览)
- 使用JSR-238更快地全球化您的应用程序 (106次浏览)
- J2ME游戏中的图片处理 (105次浏览)
- GT4 开发:从头开始进行相互的身份验证 (104次浏览)
- 使用Java NIO提高服务端程序的性能 (103次浏览)
- J2ME RPG游戏边学边做(一) (70次浏览)
- J2ME中通过Http协议传输图片 (67次浏览)



