日期:2014-05-20  浏览次数:20751 次

关于Push的问题
想做一个用内部时钟激活MIDlet的push   但是在EC上写完程序却无法正确运行
protected   void   startApp()   throws   MIDletStateChangeException   {
display   =   Display.getDisplay(this);
Form   form   =   new   Form( "Push ");
form.append( "This   is   a   push   example ");
display.setCurrent(form);
}



protected   void   destroyApp(boolean   arg0)   throws   MIDletStateChangeException   {
scheduleMIDlet(10000);
display   =   null;
}

private   void   scheduleMIDlet(long   delt){
try
{
Date   now   =   new   Date();
PushRegistry.registerAlarm(this.getClass().getName(),now.getTime()+delt);
}
catch(Exception   e){
e.printStackTrace();
}
}

运行的时候提示java.lang.ClassNotFoundException:   No   MIDLet- <n>   registration
是不是应该修改jad文件才可以正确运行,如果修改的话在EC力要怎么修改呢?


------解决方案--------------------
jad里,必须注册该MIDlet的名字到MIDlet- <n> 中
比如
MIDlet-1: Push, icon.png, YourMIDlet
------解决方案--------------------
最好看看wtk自带的例子,你会很好的解决这个问题
------解决方案--------------------
EC的JAD文件可以修改,需要安装EclipseMe插件。

然后用WTK2.5.1,使用Project中的Run via OTA可以运行,并且成功。