移动应用网络与国际化开发全解析
立即解锁
发布时间: 2025-08-17 01:00:41 阅读量: 1 订阅数: 2 

### 移动应用网络与国际化开发全解析
#### 移动设备网络连接的挑战与机遇
在移动应用的运行环境中,应用所在的网络环境决定了哪些客户端能够访问移动设备。运营商网络采用网络层协议作为其协议栈的一部分,每个连接到网络的设备都有唯一的网络地址。客户端要访问设备及其服务器套接字,就必须确定设备的网络地址。然而,运营商的网络配置和实现可能不会将连接的移动设备地址对外或对内暴露,这使得客户端无法访问目标移动设备。
许多运营商网络为移动设备采用动态网络地址分配。在这种情况下,希望连接的客户端必须动态确定移动设备的地址。若没有提供查找机制,客户端就无法请求连接到该设备。
不管移动设备地址是静态还是动态的,运营商网络可能会采用网络地址转换(NAT)方案来修改或转换移动设备的地址。采用NAT方案的动机可能是地址空间限制或安全考虑。某些网络协议可能没有足够的地址空间来处理大量的网络设备。若运营商希望暴露其设备的网络地址,就必须提供某种动态地址映射和查找机制的注册表,否则服务器应用将无法被访问。
出于安全原因,运营商可能不想将用户移动设备的地址暴露给外界。这样,应用可能只能被运行在运营商主机系统上的应用访问,甚至在运营商网络内部,访问也可能仅限于特权应用。而且,在网络内部,每个设备都必须有一种方式来公布其网络地址,以便其他设备能够访问它。在当前的大多数无线网络中,移动设备彼此之间并不知道对方的存在或地址,但随着3G网络在未来几年的普及,这种情况可能会改变。
3G无线网络正朝着采用IPv6作为其网络层协议的方向发展。有了IPv6,有足够的地址可以为世界上的每个移动设备分配一个唯一的IP地址。如果每个设备都有唯一的静态IP地址,任何知道设备地址的应用都可以连接到设备上的知名端口。不过,运营商实施的安全和配置策略可能会影响应用的实际可用功能。
#### J2ME与J2SE网络的差异
MIDP通过其`javax.microedition.io`包支持网络功能,它提供了对基本无连接和面向连接的通信协议的支持。MIDP网络包设计的关键是通用连接框架的概念,它定义了应用程序进行网络连接的通用机制,并且抽象了不同协议的不同类型连接的设置和使用差异。
这个框架使应用程序代码可以独立于所使用的具体连接类型编写,这种独立性在底层网络性质会影响应用服务可用性的普适环境中非常重要。连接工厂类`Connector`抽象了请求和获取使用不同底层通信协议的不同类型连接的细节。应用程序使用连接工厂请求访问网络资源,资源通过使用连接请求中指定的通信协议的连接提供给应用程序。
连接类型的层次结构代表了应用程序可以创建的不同类型的连接。这些连接类型的各种接口定义反映了不同类型连接所使用的协议,也反映了连接类型的预期语义。连接主要分为四类:流连接支持连接到通信端口、应用层连接到HTTP服务以及基本的Unix风格套接字连接;数据报连接支持连接到数据报服务。
MIDP缺乏对其他应用层协议(如RMI、CORBA或Jini)的支持,原因是个人移动设备缺乏支持这些分布式处理机制所需的处理能力。而CDC在网络和通信方面提供了比CLDC/MIDP更多的支持,例如标准委员会已经定义了RMI配置文件,其他配置文件也在开发中。如果确实需要这些功能,应该考虑目标设备以及CDC或CLDC哪个更适合应用程序。虽然未来几年个人移动设备可能会强大到足以支持其他配置文件,但目前不应该以此为预期进行设计。
以下是MIDP和J2SE网络功能的差异对比表格:
| 对比项 | MIDP | J2SE |
| ---- | ---- | ---- |
| 网络包 | 无`java.net`包,通过`javax.microedition.io`包支持网络 | 有`java.net`包 |
| 输入输出流类 | 支持J2SE字节和字符导向的输入输出流类的子集,缺少`BufferedReader`、`LineNumberReader`和`StringReader`类 | 完整支持相关类 |
| 分布式通信机制 | 缺乏RMI、Jini、JavaSpaces、CORBA等支持 | 支持这些分布式通信机制 |
#### 国际ization的核心概念
国际ization是使软件能够遵循运行时环境定义的地理、语言和文化背景的实践,该术语有时缩写为“i18n”。
##### 区域和本地化
区域代表特定的地理、语言和文化背景,描述了国际化应用程序运行的上下文。本地化是使应用程序在特定区域上下文中工作的实践,有时缩写为“l10n”。开发者在将应用程序国际化后,会为一个或多个区域进行本地化。
语言通常是区分区域的主要因素,语言使用的差异包括拼写、大小写、标点、习语表达甚至书写方式等。实际上,地理环境通常划分了使用不同语言的区域,语言使用通常与特定的地理环境相关联。因此,语言和地理环境是描述区域的两个主要信息。例如,法国、瑞士和加拿大是使用法语方式不同的三个地理区域;中国和中国台湾是使用普通话方式不同且习语表达存在差异的不同区域。
区域的地理环境可以代表小于一个国家的区域,如省份、地区甚至城市。例如,中国的香港和广州,粤语的口语
0
0
复制全文
相关推荐










