Novo nos navegadores: o Firefox 66 bloqueia vídeo e som por padrão, o Chromium limita o orçamento da página


As próximas versões do Firefox e Chromium podem fazer alterações importantes.

Primeiro, no Firefox 66 para desktops, a reprodução automática de vídeo e som em todas as páginas é bloqueada por padrão. O blog Mozilla Hacks alerta os desenvolvedores com antecedência . A reprodução de vídeo e som é permitida somente através da API HTMLMediaElement e somente após o usuário interagir com a página (clique do mouse, clique do botão ou tela sensível ao toque).

No Chromium, alterações ainda mais interessantes podem ocorrer.

Ao mesmo tempo, é permitida a reprodução automática de vídeo com som abafado. Para esse conteúdo, você precisa definir o atributo "mudo" como true para HTMLMediaElement . A captura de tela mostra que os usuários podem desativar manualmente o bloqueio de som para sites individuais.

No Firefox para Android, a nova implementação substituirá o mecanismo de bloqueio automático de reprodução existente.

Tecnicamente, o Firefox bloqueia a chamada play() de HTMLMediaElement.play() , retornando um erro NotAllowedError . Todos os navegadores com funcionalidade semelhante fazem o mesmo. Portanto, os desenvolvedores da web não devem assumir que a chamada para play() sempre será bem-sucedida. Para evitar o bloqueio, duas opções são recomendadas. Primeiro: comece a reproduzir o conteúdo em conjunto com um manipulador de eventos, por exemplo, KeyboardEvent na área de trabalho ou touchend para Android. Segundo: inicie a reprodução automática sem som (é ativado por padrão) e mostre ao usuário um botão para ativar o som.

A versão final do Firefox 66 está programada para ser lançada em 19 de março de 2019 , para que os desenvolvedores tenham tempo para se preparar.

Atualmente, a Mozilla está trabalhando no bloqueio automático de conteúdo de áudio da Web : está prometido até o final de 2019.

Orçamento da página da Web


Alterações no Chromium ainda estão em discussão. Não é o fato de o commit correspondente ser incluído na ramificação principal. Mas a ideia é muito interessante.

Em 4 de fevereiro de 2019, um dos desenvolvedores, Alex Russell, apresentou o commit 1265506 ("Never-Slow Mode") . Ele sugere a introdução de um modo adicional --enable-features=NeverSlowMode no navegador, o que limitará o orçamento de cada página da web , garantindo carregamento rápido.

Alex Russell é um dos principais desenvolvedores do Chrome, Blink e da plataforma da Web no Google, autor do artigo “Você pode pagar? O orçamento da produtividade da web no mundo real ", cuja tradução foi publicada na Habré.


Ilustração de um artigo de Alex Russell

Orçamento sugerido:

  • Volume de uma imagem: 1 MB
  • O volume de todas as imagens: 2 MB
  • Uma folha de estilo CSS: 100 KB
  • Todas as folhas de estilo CSS: 200 KB
  • Tamanho máximo do script: 50 KB

Naturalmente, o usuário incluirá essa função à vontade. Por exemplo, se você trabalha com uma conexão lenta à Internet, em um dispositivo fraco (computador desatualizado) etc. O limite de orçamento garante carregamento rápido e sem freios, mas ao mesmo tempo aumenta a probabilidade de a página não carregar até o fim.

Obviamente, o orçamento deve ser revisado periodicamente, com foco no tempo de carregamento da página.

Sites de obesidade


O orçamento da página é uma boa ideia. Muitos usuários e especialistas observam que, ao longo dos anos, programas e aplicativos da Web não se tornam mais rápidos, apesar de um aumento significativo no desempenho do computador.

Por alguma razão, as solicitações de aplicativos estão crescendo mais rapidamente que o desempenho do hardware. Como resultado, o software fica mais lento a cada ano e os sites estão engordando .
A tendência é que o software não se torne mais rápido e mais funcional. Temos equipamentos mais rápidos nos quais o software com as mesmas funções alterna mais lentamente do que antes. Tudo funciona muito mais devagar que a velocidade máxima. Você já se perguntou por que seu telefone é inicializado de 30 a 60 segundos? Por que ele não pode inicializar, digamos, em um segundo? Não há limitações físicas. Pessoalmente, eu gostaria disso. Eu quero que os desenvolvedores atinjam o limite, usando cada pedaço de desempenho. - Do artigo "Minha decepção com o software"
Talvez um orçamento de página da Web ajude a resolver o problema se outros desenvolvedores do Chromium concordarem com o comprometimento de Russell.



Source: https://habr.com/ru/post/pt439118/


All Articles