JME Push Registry Alarm - PullRequest
       2

JME Push Registry Alarm

1 голос
/ 09 апреля 2011

Мой мидлет предназначен для регистрации будильника, но когда я тестирую его на своем Nokia 2680s-2, вот что происходит;
Когда я выхожу из мидлета нажатием программной клавиши с командой выхода, мидлет не просыпаетсяв нужное время, означающее, что время будильника не было зарегистрировано в реестре push-уведомлений.Однако, когда я выхожу из мидлета, нажимая клавишу включения / выключения, телефон запрашивает ответ о том, хотите ли вы, чтобы мидлет автоматически запускался (SecurityException), когда вы принимаете, время будильника регистрируется, и оно запускается автоматически.

Мой слушатель commandAction обрабатывает команду выхода следующим образом:

if (command == myExit)
{
    notifyDestroyed();
}

Регистрация тревоги обрабатывается в destroyApp (), как показано ниже:

public void destroyApp(boolean unconditional) 
{
    notifyDestroyed();
    try
    {
        setMidletWakeupTime(someTimeValueAsLong);
    }
    catch(ClassNotFoundException cnfe)
    {
    }
    catch(ConnectionNotFoundException cnfe)
    {
    }
    catch(SecurityException se)
    {
    }
 }

Код функции setMidletWakeupTime:следующим образом:

public void setMidletWakeupTime(long wakeupTime)
       throws ClassNotFoundException, ConnectionNotFoundException,
       SecurityException 
{
    String className = this.getClass().getName();
    PushRegistry.registerAlarm(className, wakeupTime);
}
...