;(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

Veja como colocar senha no WhatsApp para manter conversas e fotos seguras

Lucas Carvalho/Tilt
Imagem: Lucas Carvalho/Tilt

Lucas Carvalho

De Tilt, em São Paulo

27/08/2021 04h00

Se você se preocupa com a segurança e a privacidade dos seus dados pessoais, já ou da hora de proteger melhor o aplicativo que armazena uma porção deles no seu celular: o WhatsApp.

Entre conversas com empresas, amigos e familiares, é quase certo que em algum momento você compartilhou seu endereço, uma foto particular ou outro dado sensível. Se seu telefone for roubado ou perdido, essas informações são um prato cheio para criminosos.

Felizmente, o WhatsApp permite aumentar a segurança das suas conversas de duas formas: colocando uma camada extra de segurança com uma senha numérica e configurar o uso com biometria — isto é, você pode trancar seu app de modo que ele só possa ser aberto pela sua impressão digital ou pelo reconhecimento facial do seu rosto.

Como colocar senha

No Android e iPhone é possível alterar as configurações para que o WhatsApp solicite uma senha sempre que alguém tentar usar o seu número em um novo aparelho. Além disso, a plataforma de tempos em tempos pede para você digitar a combinação cadastrada para confirmar que você é você mesmo.

  • Vá nas configurações e procure o item "Conta"
  • Agora vá na opção "Confirmação em duas etapas". Você precisará criar uma senha numérica de seis dígitos. Evite usar datas de nascimento de familiares ou a sua própria. Crie um código que seja difícil de adivinhar -- nada de 123456.
  • Siga as orientações da tela e pronto. É possível nesse processo cadastrar um email também como mais uma camada de confirmação.

Biometria

Se seu celular possui recursos de biometria, como impressão digital ou reconhecimento facial (Touch ID ou Face ID, para quem tem iPhone), siga os os a seguir.

Como bloquear o WhatsApp com impressão digital no Android

  1. Abra o WhatsApp e toque nos três pontinhos ali no canto superior direito da tela;
  2. No menu, toque em "Configurações";
  3. Na nova página vá em "Conta" e depois toque em "Privacidade";
  4. Deslize até o final da tela e toque em "Bloqueio por impressão digital";
  5. Deixe ligado o interruptor da opção "Desbloquear com impressão digital";
  6. O WhatsApp vai pedir que você toque no sensor de impressão digital do seu celular para fazer o cadastro;
  7. Com o cadastro pronto, selecione um intervalo de tempo para que a sua impressão digital seja solicitada pelo app (quanto menor, melhor).
whatsapp - Reprodução/Tilt - Reprodução/Tilt
Como ativar biometria no WhatsApp para Android
Imagem: Reprodução/Tilt

Como bloquear o WhatsApp com Touch ID ou o Face ID no iPhone

Se você tem qualquer modelo mais recente que o iPhone 5S e anterior ao iPhone 8, você tem o Touch ID, sensor de impressão digital que fica no botão de Início do telefone.

Mas se você usa um iPhone mais recente, como os modelos X, XS, 11 ou 12, você já tem o Face ID, o scanner facial que serve para desbloquear o telefone. Antes de ativar no WhatsApp, você deve ter um desses recursos ligado no seu celular.

  1. Abra o WhatsApp e toque em "Configurações", ali no canto inferior direito da tela;
  2. Em seguida, toque em "Conta", depois "Privacidade", e depois em "Bloqueio de tela";
  3. Toque no botão para ativar a opção "Solicitar o Touch ID" ou "Solicitar o Face ID" (depende do seu modelo de iPhone);
  4. Selecione por quanto tempo o WhatsApp ficará sem solicitar o Touch ID ou o Face ID para abrir (quanto menor o tempo, mais seguro).
whatsapp - Reprodução/Tilt - Reprodução/Tilt
Como ativar biometria no WhatsApp para iOS (iPhone)
Imagem: Reprodução/Tilt