Reputation: 209
I want to start my own service implementation when the phone starts?
How to achieve it?
Upvotes: 1
Views: 2345
Reputation: 22775
Quote from How To - Write safe initialization code
An application may need to run once automatically during system start-up to perform initialization routines such as registering listeners and retrieving information from persistent storage.
Such routines should not be performed until the system has finished core start-up tasks such as security checks, establishing network connectivity, and other tasks.
Therefore an application should ensure that system start-up is complete before running its own initialization code, as demonstrated in the following example:
class MyApp implements SystemListener {
public static void main(String[] args) {
MyApp appInstance = new MyApp();
// If system startup is still in progress when this
// application is run.
if (ApplicationManager.getApplicationManager().inStartup()) {
appInstance.addSystemListener(appInstance);
} else {
appInstance.doStartupWorkLater();
}
appInstance.enterEventDispatcher();
}
// constructs
MyApp() {
}
private void doStartupWorkLater() {
invokeLater(new Runnable() {
public void run() {
doStartupWork();
}
});
}
private void doStartupWork() {
}
// SystemListener
public void powerUp() {
removeSystemListener(this);
doStartupWork();
}
// TODO: other SystemListener methods
}
Upvotes: 2
Reputation: 1457
You could use an IPC (kind of) mechanism to exchange data between the "Service" and Application. There are two ways of accomplishing this:
In the first approach, the other entity is not notified when data is added to store.
Upvotes: 0
Reputation: 1676
You just need to set the "System Module" and "Auto Start" options in the project properties in the blackberry JDE. This will start your app on phone boot.
Upvotes: 2