A manipulação de exceção no desenvolvimento de aplicações samsung smarttv
O desenvolvimento de aplicações SmartTV precisa lidar com mais exceções do que outras plataformas. No entanto, compreender características da TV com controle remoto e SDF fornece guias que ajudarão a lidar com as exceções.
Conteúdo
tratamento de exceção para o foco
A SmartTV usa um controle remoto para mover o foco para controlar uma aplicação. O foco deve ser controlada durante todo o tempo que um aplicativo é executado. Perder o foco significa que um usuário perdeu a única ferramenta de controle para usar o aplicativo. Isso pode causar um feedback errôneo entradas de controle remoto, ou simplesmente nenhum feedback em tudo.
Video: Desenvolvimento de Aplicativos Mobile com HTML5 | Diogo Beato | Papo Reto
Quando o foco é perdido durante a execução de uma aplicação, devido ao tratamento de exceção inadequada, a única solução está terminando e reiniciar a aplicação.
O código anterior usa o IME para obter dados do usuário para o formulário de login, esvaziar o elemento Main.login.elem, e digite os dados recebidos lá.
A exclusão de um sub-elemento do elemento de login usando a função jQuery empty () faz com que a âncora atualmente focado para também ser excluído. A menos que o foco já foi transferida para um outro elemento, a aplicação perde o foco. Para resolver este problema, defina uma âncora e mover o foco para a âncora.
O foco também pode ser perdido quando a função borrão oposto () é usado.
Main.anchor.blur () -
A função blur () é frequentemente usado ao chamar o AVPlayer ou terminar manualmente uma sessão IME. Basta lembrar de mover o foco sempre que utilizar a função blur ().
Main.anchor.blur () - Main.Element.anchor.focus () -
Há outras situações que podem perder o foco - carga ou terminando um módulo, mudando telas, usando um evento de pop-up, etc. O foco serão perdidos a menos que o tratamento de exceção apropriado é adicionado. O foco é o ponto de conexão entre um usuário e um aplicativo. Sempre tome cuidado para não perdê-lo.
Manipulação de exceção para a tecla Enter / Exit
A menos que de outra forma programada, pressionando o retorno ou a tecla Sair termina a aplicação Samsung SmartTV execução. No entanto, um pedido múltiplo comum com várias telas precisa reprogramar a tecla Enter para mostrar a tela pai, em vez de terminar a aplicação. Uma vez que um usuário habitualmente pressiona a tecla Return para controlar uma SmartTV, um aplicativo bem projetado irá perguntar ao usuário se ela realmente quer terminar a aplicação.
A função anterior impede a ação padrão do evento tecla Return de acabar com a aplicação. Consulte o seguinte para como ele é usado.
Note que a função event.preventDefault () foi adicionado na manipulação da tecla Return evento. Este tratamento de exceção também é usado para mostrar uma janela de confirmação quando a tecla Sair for pressionado. Neste caso, adicionar a função acima e uma janela pop-up de confirmação para código de manipulação de eventos da chave Exit para projetar um aplicativo refinado.
tratamento de exceção para o evento jogador saída
Quando uma reprodução VOD está completo, função Stop do objeto Player AV deve ser chamado manualmente para evitar um erro de sistema causada por vários módulos jogador sendo chamado. Um segundo VOD podem não ser reproduzidos ou o aplicativo pode falhar se este passo é negligenciada. Não se esqueça esta manipulação de exceção.
Main.AVPlayer.Stop () -
A função de chamada onstreamcompleted deve ser registrado para o jogador AV, de modo que ele será chamado quando uma reprodução está completa. Adicionar a função de paragem na mesma.
Esta manipulação excepção é combinado com o tratamento de exceção tecla Enter anterior, como mostrado a seguir. O módulo AV jogador é declarado como uma cena e recebe eventos de chave através de sua âncora. Se a tecla Enter é pressionada para a âncora, deve chamar a função Stop () também.
O jogador AV pode acabar por várias razões. A função anterior Stop () deve ser usado para todas as situações possíveis. E um aplicativo deve verificar se há algum objeto jogador aberto durante sua saída.
tratamento de exceção para o IME
IME é um módulo interno Samsung SmartTV para a recolha de dados de entrada do utilizador. Como o módulo AV Player, o módulo IME também usa funções de retorno de chamada para diversas situações. O módulo IME requer entregar cuidado para funções-callback além disso, ele é chamado com um
entrada máxima lengthIME onClose
Um elemento deve ter um comprimento máximo para o módulo IME. O SDF permite um máximo de 256 cartas. Um aplicativo pode falhar depois disso. Definir o maxlength conforme mostrado.
O segundo tratamento de exceção é para a saída do módulo IME. O módulo IME é aberto com a função OnShow () e fechadas com a função onClose ().
Se um aplicativo de repente termina sem terminar corretamente um módulo IME aberto em primeiro lugar, o módulo IME será forçado a fechar bem. No entanto, isto pode falhar se o recurso do sistema estava ocupado fechar o aplicativo, causando um erro de sistema.
Para evitar a situação acima, o código a seguir devem ser incluídas na função onunload que manipula o evento de saída do aplicativo.