;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Pode molhar? Cair na piscina? Entenda certificações de relógios e celulares

Relógios e celulares têm padrões de certificação que definem, por exemplo, a profunidade e tempo que eles aguentam sob a água - Getty Images
Relógios e celulares têm padrões de certificação que definem, por exemplo, a profunidade e tempo que eles aguentam sob a água Imagem: Getty Images

Rodrigo Lara

Colaboração para Tilt, em São Paulo

18/01/2023 04h00

O mercado já está recheado de celular, fones de ouvido e smartwatches resistentes à água. Mas existem diferentes níveis.

Essa característica costuma ser indicada por uma sigla, que começa com as letras IP, de "Ingress Protection" (ou "Proteção de Entrada"), seguida de dois números.

O primeiro número diz respeito à proteção contra poeira e outros resíduos sólidos, enquanto o segundo diz respeito ao nível de proteção contra líquidos.

No caso de partículas sólidas, o significado de cada número é o seguinte:

  • 0: Não há proteção
  • 1: Só há proteção contra objetos maiores do que 50 mm
  • 2: Só há proteção contra objetos maiores do que 12,5 mm
  • 3: Só há proteção contra objetos maiores do que 2,5 mm
  • 4: Só há proteção contra objetos maiores do que 1 mm
  • 5: Proteção parcial contra partículas de poeira, que podem entrar no aparelho, mas que não causarão dano
  • 6: Proteção completa

No caso de água, os números indicam os seguintes níveis de proteção:

  • 0: Não há proteção
  • 1: Proteção contra gotas que incidem verticalmente sobre o produto
  • 2: Proteção contra gotas que incidem sobre o produto em um ângulo de 15 graus ou menos
  • 3: Proteção contra gotas que incidem sobre o produto em um ângulo de até 60 graus
  • 4: Resistência contra respingos de água em qualquer direção
  • 5: Resistência contra um jato de água constante e de baixa pressão
  • 6: Resistência contra um jato de água constante, de grande fluxo e alta pressão
  • 6K: Resistência contra um jato de água constante, de grande fluxo e altíssima pressão. É pouco usado
  • 7: Pode ser submerso em até um metro de água por 30 minutos
  • 8: Pode ser submerso em profundidades maiores do que um metro. O fabricante especifica a profundidade máxima
  • 9K: Resistência contra jatos de água de alta pressão e temperatura, mesmo com origem próxima. É pouco usado

É importante notar aqui que as especificações 7 e 8 de resistência à água não significam, necessariamente, que o produto também será resistente a jatos d'água.

"Quando há um jato de água, dependendo do caso, a pressão exercida sobre o aparelho pode ser maior do que a causada por uma submersão", explica Alessandro de Oliveira Santos, professor de engenharia eletrônica do Instituto Mauá de Tecnologia (IMT).

Caso ele e tanto submersão quanto jatos, geralmente as duas certificações aparecem separadamente em sua ficha técnica.

Há também o comércio de produtos que não são submetidos à certificação IP para um dos casos (poeira ou água), cuja sigla de identificação acaba adotando um X. Geralmente, esses produtos têm uma resistência definida pelo fabricante.

Um exemplo é o relógio Apple Watch Series 8. Ele tem uma certificação IP6X, sendo vedado à entrada de poeira e resistente à submersão de até 50m ou respingos de água (como durante o banho).

Como a vedação funciona

Água e circuitos eletrônicos nem sempre se dão bem. O motivo mais óbvio é que os circuitos usam eletricidade e a água (exceção feita à destilada) contém sais e outras substâncias capazes de conduzir a eletricidade.

O risco é de curto-circuito se o produto tiver muitas partes metálicas expostas à água, destaca André Perin, professor da disciplina de sistemas embarcados da engenharia elétrica da FEI.

Há algumas técnicas usadas para manter a água longe. Uma delas consiste em envolver todo o circuito em uma película de resina. "É um método simples, comum em aparelhos que usam água, como máquinas de lavar", acrescenta Perin.

Outra forma é criar uma espécie de "caixa estanque" ao redor de circuitos e outras partes sensíveis, vedando assim a entrada de água. Essa técnica é usada em produtos como smartphones e smartwatches.

A resistência desses gadgets, porém, não se baseia apenas em garantir que sua carcaça seja bem vedada contra líquidos. "Ela envolve questões além da vedação em si. Conectores dos celulares, por exemplo, precisam ser blindados, assim como espaços destinados a microfones e botões", comenta Santos.

Confie desconfiando

Por mais óbvio que seja, o melhor a se fazer antes de molhar o seu eletrônico é seguir à risca o que os fabricantes recomendam. E, mesmo assim, convém ter atenção.

Isso porque a resistência do produto tende a perder eficiência com o tempo. Borrachas usadas na vedação, por exemplo, ressecam com o ar dos anos e perdem parte de sua capacidade de barrar a água.

Além disso, smartphones sofrem leves deformações com o dia a dia. É algo normal e que pode ocorrer devido ao uso comum, ao transporte no bolso de calças, quedas e exposições ao calor.

A Apple é uma das fabricantes que especifica isso em sua página de e, dizendo que "a resistência a respingos, água e poeira não é uma condição permanente e pode diminuir com o tempo".

Como não há como saber o estado da vedação do seu aparelho, o melhor a se fazer é usar o bom senso e evitar riscos desnecessários.

Outros casos, como o de smartphones, preveem certa resistência à água, mas geralmente isso se aplica em casos de "mergulhos" acidentais. O ideal mesmo é manter o aparelho longe de líquidos.

É o caso do iPhone 14, que tem certificação IP68, sendo resistente à poeira e sobrevivendo a uma submersão em 6 metros de água por até 30 minutos. Mas isso não quer dizer, por exemplo, que você pode levar o aparelho para debaixo do chuveiro.