黑莓如何安排应用程序

时间:2011-12-01 01:56:30

标签: blackberry scheduled-tasks

在黑莓手机中,我需要能够在一天中的某些时间启动和关闭应用程序。说从早上8点开始,然后在下午5点关闭应用程序。是否可以在黑莓中以这种方式安排应用程序?

我正在寻找的功能类似于Unix或Windows调度程序中的cron。 我不是开发人员。是否有一个应用程序提供类似于cron或Windows调度程序的功能?

2 个答案:

答案 0 :(得分:3)

您可以使用ApplicationManager的功能来安排应用程序启动:

ApplicationDescriptor descriptor = ApplicationDescriptor.getCurrentApplicationDescriptor();
ApplicationManager manager = ApplicationManager.getApplicationManager();

// Compute the time when it need to be scheduled
long toberuntime;
manager.scheduleApplication(descriptor ,toberuntime,true);

还要注意日期和时区的变化,如here

所述

答案 1 :(得分:1)

这是另一个每分钟调用一次runnable的例子。

请注意,您必须为该任务设置备用条目,并确保它在设备启动时启动。应用程序管理器负责安排作业。

在此示例中,每次调用背景aep时设备都会振动。

 public static void main(String[] args)
 {
    // Create a new instance of the application and make the currently
    // running thread the application's event dispatch thread.
    if(args != null && args.length > 0 && "ticker".equals(args[0])){
        scheduleUpdate();

    }else{
        UIapp theApp = new UIapp ();       
        theApp.enterEventDispatcher();
    }
 }

private static void scheduleUpdate() {
    // TODO Auto-generated method stub
    Alert.startVibrate(2550);

    ApplicationDescriptor current = ApplicationDescriptor.currentApplicationDescriptor();

    current.setPowerOnBehavior(ApplicationDescriptor.DO_NOT_POWER_ON);

    ApplicationManager manager = ApplicationManager.getApplicationManager();

    //check if device has booted and is ready..
    if(!manager.inStartup()){
        try{
            TickerUpdateService tickerUpdater = new TickerUpdateService(endpointURL);
            tickerUpdater.start();
        }catch(Exception Ex){
            System.out.println(Ex.getMessage());
        }
    }

    manager.scheduleApplication(current, System.currentTimeMillis() + 60000, true);
}