A navegação com várias guias agora é o padrão, então não se pode presumir que o usuário está assistindo ao app só porque ele está em execução. Felizmente, a nova API Page Visibility permite que o app descubra se está visível ou não. Você pode usar a API para reduzir atividades e computação de rede desnecessárias.
document.webkitHidden
é um valor booleano que indica se a página atual está oculta. Você pode testar isso agora no console, se estiver usando uma versão recente do Chromium. document.webkitVisibilityState
vai retornar uma string indicando o estado atual, que pode ser visible
, hidden
ou prerendered
. E um novo evento webkitvisibilitychange
será disparado quando qualquer uma dessas mudanças, por exemplo, quando o usuário abrir a guia do app ou se afastar dela.
Se você quiser testar esse recurso, confira a visibility.js, que adiciona um pouco de facilidade à API para tornar a visualização dessas interações um pouco mais divertida.