首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 第二书店 程序员
您的位置:Mobile->中断Java ME手机上的屏幕保护程序

中断Java ME手机上的屏幕保护程序2007-10-09 来自:lizhe1985  [收藏到我的网摘]

来源:天极Yesky

  如果你的J2ME应用程序不要求用户连续按键,那么在SonyEricsson的手机上运行的程序,可能一段时间之后就会出现屏幕保护界面,这是手机自带的功能。但是我们可以通过Nokia UI API来设置背景灯来阻止屏幕保护界面。但是持续让背景灯打开会消耗更多的电量。

  请注意:对于UIQ3的手机,例如W950 M600等,可以从控制面板来禁止屏幕保护程序,因此Nokia UI API不再适合。

  还需要注意的是由于我们并非在程序中禁止屏幕保护程序,而是中断其运行。因此要在循环中不停的调用setLights()方法。

DeviceControl.setLights(0, 100);

  下面是一个案例

import com.nokia.mid.ui.DeviceControl;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;

public class BacklightWorkaround extends MIDlet {

 private SimpleCanvas canvas;

 /**
 * Keeps the backlight on by repeatedly setting
 */
 class LightThread extends Thread {
  public void run() {
   while(true){
    DeviceControl.setLights(0, 100);
    try {
     Thread.sleep(5000);
    } catch (InterruptedException ex) {
     ex.printStackTrace();
    }
   }
  }
 }

 private class SimpleCanvas extends Canvas implements CommandListener{
  private Command exitCmd;
  private MIDlet midlet;

  public SimpleCanvas(MIDlet midlet) {
   this.midlet = midlet;
   exitCmd = new Command("Exit",Command.EXIT, 1);
   addCommand(exitCmd);
   setCommandListener(this);
  }
  public void paint(Graphics g) {
   g.drawString("Let there be light.", 0, 0, Graphics.LEFT|Graphics.TOP);
  }

  public void commandAction(Command command, Displayable displayable) {
   if(command == exitCmd){
    midlet.notifyDestroyed();
   }
  }
 }

 public void startApp() {
  if(canvas == null){
   canvas = new SimpleCanvas(this);
   new LightThread().start();
  }

  Display.getDisplay(this).setCurrent(canvas);
 }

 public void pauseApp() { }
 public void destroyApp(boolean unconditional) { }
}

推荐人评论

如果你的J2ME应用程序不要求用户连续按键,那么在SonyEricsson的手机上运行的程序,可能一段时间之后就会出现屏幕保护界面,这是手机自带的功能。但是可以通过Nokia UI API来设置背景灯来阻止屏幕保护界面。

用户评论

正在载入评论列表...

是谁推荐了此篇文章

专家头像李哲
个人blog发送信息
李哲推荐的其他文章

赞助商精华文章

热点新闻

热点评论

    精彩视频

    精彩专题

    网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|版权声明|问题报告

    北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright 2000-2008, CSDN.NET, All Rights Reserved
    GongshangLogo