문제는 BlackBerry에서 어떻게 시작합니까?BlackBerry의 MainScreen에서 백그라운드 작업을 실행 하시겠습니까?
배경 : 클라이언트를 등록한 후에 백그라운드 서비스 (화면이 안되는 응용 프로그램)를 실행해야하는데, 그 후에 스레드에서 안전하게 실행해야합니다.
미리 감사드립니다. 코드 예를 들어 주시면 감사하겠습니다.
문제는 BlackBerry에서 어떻게 시작합니까?BlackBerry의 MainScreen에서 백그라운드 작업을 실행 하시겠습니까?
배경 : 클라이언트를 등록한 후에 백그라운드 서비스 (화면이 안되는 응용 프로그램)를 실행해야하는데, 그 후에 스레드에서 안전하게 실행해야합니다.
미리 감사드립니다. 코드 예를 들어 주시면 감사하겠습니다.
스레드를 확장하는 실행 가능한 클래스를 만들어야합니다. (이 작업을 수행 할 수있는 다른 방법이있을 수 있습니다, 그러나 이것은 작동합니다.
그래서 당신은 당신의 메인 화면에서 지금public class BackgroundTask extends Thread{
private Object _screen;
public BackgroundTask()
{
}
/**
* Implementation of Thread.
*/
public void run()
{
//Do some background task
}
뭔가를해야합니다, 당신은 단순히 그것을 호출해야합니다.
//Start my background task
new BackgroundTask().start()
시작은 부모 Thread 클래스에서 상속하는 방법이다, 그래서 당신을위한 스레드를 산란 알아서 할게요. 희망이 도움이됩니다.
(YourApp) UiApplication.getUiApplication())이 필요한 이유는 무엇입니까? getScreen(); ??? –
뒤늦은 관찰에서 반드시 필요한 것은 아닙니다. 업데이트를 푸시하려는 경우 스레드에 기본 화면 액세스 권한을 부여하지만 실제로는 선택 사항입니다. 모호성에 대한 사과 (나는 BB 프로그래밍에 익숙하다.) – frencha
을 수행하는 블랙 베리 방향 to use invokeLater()입니다 :
int _id = -1;
Application _app = UiApplication.getUiApplication();
...
_id = _app.invokeLater(new Runnable() {
public void run() {
// do something - in 10 seconds
_id = -1;
}
}, 10*1000L, false);
Thread thread = new Thread(){
public void run() {
// Code for the background service.
}
};
thread.start();
당신은 자동 시작 응용 프로그램으로 응용 프로그램을 만들 수 있습니다 및 배경 때 장치 부츠를 실행할 수 있습니다. –
내가 작성한대로 UI 화면에서 실행하고 싶습니다! –
그런 다음 백그라운드에서 실행하고 해당 UI 클래스의로드 화면에서 해당 클래스를 호출 할 코드가 포함 된 Thread 클래스를 만들 수 있습니다. –