Как заставить приложение J2ME работать в фоновом режиме? - PullRequest
8 голосов
/ 21 июля 2009

У меня есть написанное приложение J2ME, которое использует Bluetooth, ищет файл в одноранговом мобильном телефоне и загружает его. Я хотел бы, чтобы мое приложение запускалось в фоновом режиме, всякий раз, когда мне звонили или сообщали, а затем возобновляли работу через несколько секунд. Если кто-нибудь работал над этим, поделитесь своим опытом. Есть ли способ запустить мидлет в фоновом режиме?

Ответы [ 2 ]

10 голосов
/ 21 июля 2009

, чтобы установить приложение j2me в фоновом режиме, используйте в своем классе мидлета следующее:

          Display.getDisplay (this).setCurrent (null);

чтобы вернуть экран, используйте следующее:

          Display.getDisplay (this).setCurrent (myCanvas);

Где myCanvas - ваш экземпляр для холста

R

p.s. Вы все еще можете использовать поток или таймер, чтобы делать вещи в фоновом режиме, пока ваш мидлет скрыт.

p.s.2: это работает не на всех моделях. (Работает на Nokia s60, SonyEricsson, но не на Nokia s40, Samsung и некоторых других.

2 голосов
/ 08 февраля 2013

Способность устройства запускать приложение в фоновом режиме зависит от его способности к многозадачности. Следовательно, более дорогие устройства типа PDA с большей вероятностью поддерживают фоновое выполнение, чем более дешевые устройства. Для в фоновом режиме: -

private Display display = Display.getDisplay(this);
private Displayable previousDisplayable;

public void toBack() {
previousDisplayable = display.getCurrent();
display.setCurrent(null);
}

И прийти на передний план: -

public void toFront() {
display.setCurrent(previousDisplayable);
}

Но учтите, что он поддерживает не все устройства (работает на Nokia s60, SonyEricsson, но не на Nokia s40, Samsung и некоторых других).

...