Otimizando solicitações de api para aplicações samsung smarttv

O pedido Ajax é um processo javascript uso intensivo de memória. requisições Ajax simultâneas de um aplicativo Samsung SmartTV pode causar falta de memória dispositivo que pode resultar em uma solicitação falhou ou mesmo suspender a aplicação.

Video: Samsung SmartTV - Developing javascript based apps using the Samsung SDK

Portanto, um desenvolvedor precisa para considerar o potencial problema anterior e estar preparado para várias solicitações simultâneas.

Minimizar o número de solicitações de API

Em um conselho geral boletim web, selecionando um item da lista faz com que o aplicativo para fazer um novo pedido de dados detalhados do item selecionado usando seu código de chave. No entanto, permitindo que este hábito no desenvolvimento de aplicações SmartTV e fazer uma nova solicitação de cada vez que uma cena mudanças podem causar falta de memória. É melhor fazer um pequeno número de pedidos abrangentes. Veja o seguinte código para a API.

lt;? xml version ="1.0" encoding ="UTF-8"? Gt;001O 2011 SmartTV002De 2012 SmartTV0032013 SmartTV

A API anterior solicita uma lista de itens. elemento chave itemId de cada item é então usado para fazer a próxima solicitação de API para obter informações detalhadas de um item.

lt;? xml version ="1.0" encoding ="UTF-8"? Gt;001O 2011 SmartTVfalso2013/01/31falsoOlá Mundo

O padrão anterior é comumente usado no desenvolvimento web boletim padrão. solicitações de dados confiar totalmente no projeto API. E o projeto API anterior faz várias solicitações de API inevitável. No entanto, o projeto próxima API permite que um único pedido para lidar com o acesso a dados anteriores.

Video: Como desinstalar aplicativos no Smart Hub Samsung Smart TV Série J 2015

lt;? xml version ="1.0" encoding ="UTF-8"? Gt;001O 2011 SmartTVfalso2013/01/31falsoOlá Mundo002De 2012 SmartTVfalso2013/01/31falsofalso0032013 SmartTVverdade2013/01/31falsofalso

Os primeiros pedidos de API distribuídos podem ajudar a gestão de código puro. Mas o único método de solicitação anterior é necessária para o ganho de desempenho do aplicativo. O valor de resposta recebido pode ser armazenado dentro de um elemento DOM, uma variável tipo de objeto Java Bean, ou como um arquivo SmartTV interna usando a API do arquivo. O código que se segue demonstra o armazenamento de dados de resposta em um elemento DOM.


jQuery.ajax (url, {type: `GET`, dataType: "json", O sucesso: function (res) {var result = jQuery (res) .find ( `API gt; o item `) - jQuery (` # modelo `) eq (1) .attr (` itemDate`, resultado [1] .find ( `gt; itemDate`). text ()) -}}) -

otimização de cache

Outra técnica de otimizar as solicitações de API é usando cache, que armazena o resultado em uma variável usando uma identificação única, e reutiliza o valor armazenado da próxima vez que é necessário os mesmos dados, em vez de fazer um novo pedido. Isso é muito útil em um aplicativo com solicitações de API frequentes. O código a seguir declara uma variável para armazenar os resultados.

cache de var = {} - // variável global

Em seguida, o resultado Ajax está emparelhado com um ID único e armazenado como uma propriedade de membro da variável cache.

jQuery.ajax (url, {type: `GET`, dataType: "json", O sucesso: function (res) {var result = jQuery (res) -cache [ `0011AA`] = resultado - // id único = 0011AA}}) -

A variável resultado segurando a resposta da API é armazenado sob a variável de cache. Se outra solicitação para o mesmo dados é recebido, em seguida, o código usa os dados em cache sem fazer uma nova solicitação de servidor API.

se (cache [ `0011AA`]!) {jQuery.ajax (url, {type: `GET`, dataType: "json", O sucesso: function (res) {var result = jQuery (res) -cache [ `0011AA`] = resultado - // id único = 0011AAcallback (cache [ `0011AA`]) -}}) -} else {callback (cache [ `0011AA`]) -}

Embora o código anterior define um ID aleatório estático, um sistema de gerenciamento de ID precisa ser implementado em uma aplicação real.

Video: How to Install 1000s Apps On Your Samsung Smart TV

otimização de cache é uma técnica altamente eficiente que pode eliminar muitos pedidos. No entanto, ele tem seu próprio limite de manipulação de dados atualizados com freqüência, uma vez que reutiliza dados já armazenados.


Publicações relacionadas