Кнопка выхода из приложения LG WebOS 3.0 TV Закройте приложение и

Я разрабатываю телевизионное приложение для телевизоров LG 4K в webOS 3.0.

В self_evaluation_checklist_3.4.xlsx перечислены требования к поведению кнопки «Выход», как показано ниже.

«В webOS 3.0 при нажатии кнопки «ВЫХОД» приложение полностью закрывается и не остается в списке «Последние».

Я искал, но мне не повезло найти вызов API, чтобы полностью закрыть приложение, а также удалить приложение из списка «Последние».

Все, что я смог найти, это webOS.platformBack(); но это только возвращает на главный экран телевизора и не закрывает приложение.

Как я могу полностью закрыть приложение и не отображать его в списке «Последние»?


person user2326737    schedule 13.03.2017    source источник


Ответы (2)


Это правильный метод ( webOS.platformBack(); ). По крайней мере, наше приложение использует один и тот же метод для всех трех поколений WebOS, и LG QA Center никогда не отклонял его из-за этого.

person LadyBo    schedule 17.03.2017
comment
Спасибо ЛедиБо. Я сделаю то же самое. - person user2326737; 17.03.2017
comment
Функция @LadyBo webOS.platformBack(); вместо того, чтобы закрывать приложение и помещать его в список последних, имитирует интеллектуальную кнопку, которая открывает список всех приложений в нижней части экрана. (WebOS.js из github.com/enyojs/enyo-webos /blob/master/webOS/webOS.js) Что я могу использовать также для того, чтобы выйти из приложения и поместить его в список недавних ниже?!? Спасибо. - person mEnE; 10.04.2017
comment
Попробуйте прочитать эту тему - developer.lge.com/community/forums/ В webOS TV закрытие приложения не поддерживается/разрешено; И я особенно не знаю каких-либо инструментов или функций, чтобы удалить его из списка последних приложений, к сожалению. - person LadyBo; 12.05.2017
comment
@ user2326737, забыл упомянуть вас в комментарии раньше. - person LadyBo; 15.05.2017

Чтобы выйти из приложения и оставить его в списке «Последние», я использовал следующее:

const APPLICATION_MANAGER_SERVICE = 'luna://com.webos.applicationManager';
const TV_APP_ID = 'com.webos.app.livetv';

function sendAppToBackground() {
  webOS.service.request(APPLICATION_MANAGER_SERVICE, {
    method: 'launch',
    parameters: { id: TV_APP_ID },
    onSuccess(response) {
      if (response.returnValue === false) {
        console.error(`Error sending Application to background and bringing TV Application with ID ${TV_APP_ID} to the foreground.`);
        forciblyExitApp();
      }
    },
    onFailure(error) {
      console.error(error);
      forciblyExitApp();
    },
  });
}

function forciblyExitApp() {
  window.close();
}
person Ashitaka    schedule 02.08.2018