在J2ME的开发中,网络通讯交互是开发中的重点和难点,这里以Http通讯为例,举例说明一些优化的技巧。
1、关闭流
关闭流是非常重要的,特别对S40的机子,S40不像S60那样能自动关闭流,有时在S60的机子跑得好好的软件一拿到S40运行几次网络连接就抛出异常,其中一个原因即是流的处理。
2、异常处理
有时程序读取服务端数据会抛出异常,此时,用户又重新刷新或重新加载数据,用户不断地请求,这样的操作显然是可怕的,可用skip(long l)这个方法来处理,同时结合线程同步,这样便能更好优化网络交互。
3、线程同步
线程同步这里不多说,下面简单用例子来说明处理的过程
HttpThread实现Runnable接口
private HttpThread httpThread;
public synchronized void httpThreadSubmit() {
// clean and stop
if (httpThread != null){
httpThread.stop();
httpThread = null;
}
httpThread = new HttpThread();
new Thread(httpThread).start();
}
public class HTTPThread implements Runnable {
private boolean isStop;
public HTTPThread() {
isStop = false;
}
public void run() {
try {
// isStop用于处理线程
if (isStop)
return;
// HttpConnection 处理
// 输出流
// 读取流并对流进行解析处理,可用isStop在中间中断流
} catch (Excption e) {
// 也可加个内存抛出,回收内存System.gc();
// skip(流长度);
} finally {
// 关闭流
// 关闭HttpConnection
// 对内存回收等
}
}
public void stop() {
isStop = true;
}
}
导读
手机中的重定向问题及处理 http://fonter.iteye.com/blog/400836
J2ME如何通过cmwap直接访问互连网 http://fonter.iteye.com/blog/400868
J2ME开发中由WAP网关带来的cookie问题 http://fonter.iteye.com/blog/399105
安装JAD时提示JAD无效原因之一 http://fonter.iteye.com/blog/400888
解决Eclipse无法调试J2ME程序的配置方法 http://fonter.iteye.com/blog/405697
J2ME模拟器加载RMS时突然失效的原因 http://fonter.iteye.com/blog/407576
J2ME飞信协议分析(初稿) http://fonter.iteye.com/blog/408385
分享到:
相关推荐
例如,3G网络的普及使得移动应用开发成为热点,而移动应用往往需要频繁的网络交互,这要求开发者不仅要熟悉GCF的基本操作,还要了解如何优化网络性能,处理网络延迟和不稳定等问题。 对于未签名的J2ME程序,系统在...
Java Micro Edition(J2ME)是Java平台的一个子集,...总结,J2ME的网络通信涵盖了HTTP请求和数据报通信,它们是移动设备进行网络交互的基础。理解并熟练运用这些技术,开发者可以为J2ME应用构建高效、安全的网络功能。
除此之外,优化是J2ME游戏开发中不可忽视的一环。由于移动设备性能有限,我们需要关注内存管理、减少绘图开销、合理安排线程等,确保游戏运行流畅。 总结来说,通过J2ME开发飞机游戏,开发者需要掌握MIDP和CLDC的...
**描述解读:**这本书被誉为经典之作,意味着它深入探讨了如何利用J2ME进行无线网络编程,涵盖了从基本概念到高级应用的广泛主题。无线网络编程是指在移动设备之间或移动设备与固定网络之间的通信技术,这包括蓝牙、...
- **代码尺寸优化**:由于资源有限,J2ME开发者需要关注代码的大小和效率,利用ProGuard等工具进行代码压缩和优化。 - **延迟初始化**:避免不必要的资源消耗,只在需要时加载和初始化对象。 9. **调试与测试** ...
例如,减少对象创建、有效使用缓存、及时释放不再使用的资源都是优化j2ME应用的关键。 ### 8. j2ME Demo "j2ME基础DEMO"可能包含了一些基础的示例项目,比如简单的计时器应用、数字猜谜游戏或者显示网络图片的...
8. **性能优化**:由于移动设备硬件限制,J2ME开发者必须关注代码效率,如减少内存占用、优化图形渲染等。 9. **文件系统操作**:J2ME应用可能需要保存游戏进度、用户设置等,因此源码中会涉及文件读写和存储管理。...
为了处理网络通信,J2ME应用可以使用内置的`javax.microedition.io.Connector`和`HttpConnection`类。 2. **服务器端**:在J2EE服务器上,一个Servlet或者基于RESTful架构的Web服务接收这个请求。Servlet解析接收到...
标题中的“j2me 与jsp通信”涉及的是在移动设备上使用Java 2 Micro Edition (J2ME)平台与服务器端的JavaServer Pages (JSP)进行数据交互的技术。J2ME通常用于开发功能手机和嵌入式系统的应用程序,而JSP则是Web开发...
2. **基础语法与概念**:J2ME遵循Java的基本语法,但针对嵌入式设备进行了优化和简化。教材会讲解变量、数据类型、流程控制、函数等基础知识。 3. **MIDP API**:这是J2ME游戏开发的关键,包括Canvas类用于绘制游戏...
**J2ME网络编程** J2ME支持HTTP和TCP/IP协议,允许开发者创建联网应用。MIDP提供了HttpConnection和SocketConnection类来处理网络通信。开发者需要理解如何建立连接、发送和接收数据,以及处理网络异常。 **存储...
5. **用户界面**:J2ME使用MIDP的User Interface组件,如Canvas、Form、Item等,来构建用户交互界面。开发者可以通过布局管理、事件处理等技术,设计出符合移动设备特性的友好界面。 6. **文件系统和数据存储**:...
3. **J2ME开发环境**:通常,开发者会使用如NetBeans或Eclipse这样的集成开发环境(IDE)来编写J2ME程序,这些IDE提供了专为J2ME优化的项目管理、编译和调试工具。 4. **KVM与CDC**:J2ME的虚拟机有KVM(K Virtual ...
【J2ME手机基于服务器的网络象棋游戏源代码】是一种专门为移动设备设计的网络棋类游戏实现,它利用Java 2 Micro Edition (J2ME) 技术,让玩家能够在手机上与其他在线用户对战。J2ME是Java平台的一个轻量级版本,主要...
通过分析和实践这些代码,开发者可以理解J2ME游戏的基本结构、图形绘制、用户交互以及性能优化等方面的知识。 描述中提到“对初学者很有帮助,是初学者对精通手机开发垫下了很好的基础”,这暗示了这个代码库可能...
J2ME是Java平台的一个子集,专门设计用于移动设备和嵌入式系统,使得开发者能够在这些平台上创建丰富的交互式应用程序,包括游戏。 一、J2ME基础 J2ME由几个配置和Profile组成,其中最常用于游戏开发的是MIDP ...
1. **MIDP (Mobile Information Device Profile)**:J2ME的主组件之一,定义了移动设备上的应用程序接口,包括用户界面、网络通信和存储等基本功能。 2. **CLDC (Connected Limited Device Configuration)**:与MIDP...
通过这些源代码,你可以学习到如何组织J2ME项目结构、如何调试代码、如何优化性能以及如何处理不同设备间的兼容性问题。每个实例都是一次宝贵的实践经验,能帮助你逐步掌握J2ME开发的核心技术。 总的来说,"J2ME...
在J2ME中开发游戏,尤其是像赛车游戏这样的动态、交互性强的应用,需要对Java编程语言、MIDP(Mobile Information Device Profile)和CLDC(Connected Limited Device Configuration)有深入理解。 首先,我们来看...
J2ME,全称Java 2 Micro...通过这份“j2me学习资料之手机网站”,你可以深入了解J2ME开发的基本概念、技术细节以及实际应用,从而提升你的移动开发技能。结合实践,你可以构建出适应各种移动设备的交互式手机网站应用。