состояние run_when_backgounded и invisible () в BlackBerry 10

Я реализую приложение BlackBerry 10 Cascade. Он использует класс QTimer и имеет следующий код.

connect(timer, SIGNAL(timeout()), this, SLOT(update()));

Это работает и вызывает функцию update () в соответствии с заданным периодом времени. Он работает, когда приложение находится на переднем плане (приложение занимает весь экран), а также когда приложение работает как активный фрейм (приложение находится в состоянии эскиза).

Я также дал следующее разрешение в bar-descriptor.xml.

<permission>run_when_backgrounded</permission>

Но когда пользователь нажимает крестик (☓), весь процесс останавливается. Согласно документации по каскаду BB10

Когда приложение имеет разрешение на работу в фоновом режиме, состояние остановки отсутствует.

Что я хочу знать,

1.) Есть ли способ, которым мы можем программно удалить крестик (☓), когда он находится в активном кадре?

Если не

2.) Как я могу запустить QTimer, даже если приложение остановлено? Просто как я могу запустить фоновый процесс без пользовательского интерфейса, когда мое каскадное приложение остановлено.

3.) Достаточно ли предоставления разрешения run_when_backgounded в bar-descriptor.xml для запуска приложения в фоновом режиме?

На той же странице документации в разделе Управление состояниями приложения есть состояние invisible(). Но приведенный здесь пример не может быть реализован в каскадном приложении. класс, который включает в себя следующие

#include <bb/cascades/Application>

Это только для #include <bb/Application>?


person AnujAroshA    schedule 15.08.2013    source источник
comment
Фоновые (безголовые) приложения будут поддерживаться с 10.2. На данный момент вы не можете запустить приложение, не имея хотя бы активного фрейма.   -  person Bojan Kogoj    schedule 15.08.2013


Ответы (1)


Вам нужно безголовое приложение. Вы найдете все, что вам нужно, здесь. По сути, у вас есть два режима: на основе событий (ваше приложение будет запущено для реакции на событие, например на входящее SMS) или всегда запущено. Для постоянно работающих приложений потребуется одобрение BlackBerry.

Обратите внимание, что безголовые приложения еще не поддерживаются. Они представлены в SDK 10.2, который вчера был выпущен как золотой. Вам также понадобится ОС 10.2 (которая еще не была развернута, за исключением test, урезанные версии), чтобы использовать их.

Состояние invisible, о котором вы говорите, касается приложений без головы: приложение считается видимым, если оно находится на переднем плане, невидимым, если оно находится в состоянии активного кадра, или если перед ним есть другое приложение.

person Marc Plano-Lesay    schedule 15.08.2013
comment
Большое тебе спасибо. Я попробую это. Мне нужна всегда работающая функция. Как вы говорите, для этого требуется одобрение BlackBerry. Сначала мне нужно реализовать тестовое приложение. Я постараюсь получить на это одобрение. Каз, кажется, для меня нет другого выхода. - person AnujAroshA; 19.08.2013