[转载]Java ME应用设计指南之多网络连接

Java ME应用设计指南之多网络连接
有些设备并不允许同时打开多个网络连接,但是有的时候我们的应用程序可能需要同时打开多个连接。这样可以提高效率或者用户体验,但是应用程序应该尽量避免依赖多连接这一特性,因为对于不支持多个连接的设备你的程序可能会崩溃。

解决这一问题的办法是在JAD文件中标记出设备能够同时打开的连接数量。

那么如何能够得到设备支持的最大的连接数的,首先你可以去参考设备的规范。比如Motorola的设备规范中一般都列出了能够支持的连接类型,比如HTTP Socket等。以及设备能够同时打开的最大连接数。对于在规范中没有说明的那么我们只能编写一个测试用的MIDlet,先测试出这个特性。然后把他写到JAD文件中供以后使用。

例如下面的JAD文件中就标记了最大连接的数量。

MIDlet-1: Foo, , FooMIDlet-Jar-Size: 7063MIDlet-Jar-URL: foo.jarMIDlet-Name: FooMIDlet-Vendor: Yoyodyne Inc.MIDlet-Version: 1.0MicroEdition-Configuration: CLDC-1.1MicroEdition-Profile: MIDP-2.0Device-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
}

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/374079/viewspace-131651/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/374079/viewspace-131651/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值