当前位置: 代码迷 >> J2ME >> 手机拨接电话时在后台执行的MIDlet是否会被中断?该如何解决
  详细解决方案

手机拨接电话时在后台执行的MIDlet是否会被中断?该如何解决

热度:7128   发布时间:2013-02-25 21:37:52.0
手机拨接电话时在后台执行的MIDlet是否会被中断?
如题:
      如果中断有什么好的解决方法?
      请各位帮帮忙?

------解决方案--------------------------------------------------------
应该是pause
------解决方案--------------------------------------------------------
认真想的话自己可以解决
提示下
你把要保留的数据放到pauseApp()里面
同时注意循环
------解决方案--------------------------------------------------------
它会自动调用:hideNotify();
回到游戏又会调用:showNotify();
你要在hideNotify();里面自己把游戏暂停,不然它仍然在跑.
------解决方案--------------------------------------------------------
是否会中断MIDlet是和平台相关的。

一般的手机,在来电接电话后并不会关闭其他的应用,而是任由其继续运行,Java也是。这时Java跑到了后面继续运行,这时要 MIDlet 自己处理 hideNotify() showNotify() (javax.microedition.lcdui.Canvas);

在有些平台,特别是多任务系统的,像基于Linux平台的手机,他们可以在在来电接电时,Linux系统将这个JVM进程suspend,这样MIDlet就什么都不用管,就当自己一直在运行就行了。

当然,在那些多任务系统上,他们也可以在来电接电时直接kill JVM进程。但是一般都不会这样做,呵呵,这些都看往手机上移植JVM时具体怎么实现。

最保险的,还是如 theLast_(虾器) 所说,自己处理 javax.microedition.lcdui.Canvas 中的hideNotify() showNotify()
------解决方案--------------------------------------------------------
不会中断,只是切换到后台继续执行
------解决方案--------------------------------------------------------
上次我也没在hideNotify()里添加程序,结果在试游戏时刚好接到一个电话,声音还在那里吵
------解决方案--------------------------------------------------------
楼上的搞笑.电话那边郁闷了吧?呵呵.