Any3DAny3D
·Any3D Team

createImageBitmap indisponível? Solucionar por plataforma e ambiente

troubleshootingbrowser-compatibilitycreateimagebitmap

Sintomas que você vê

O Any3D exibe a mensagem "O navegador atual não suporta createImageBitmap". Este é um dos três componentes essenciais da rota do Worker, usado para decodificar pixels de imagens de forma eficiente em segundo plano. Sua ausência impede que processamentos como compressão de texturas e conversão de imagens para modelos completem a rota total do Worker, tornando arquivos grandes mais propensos a travamentos.

Causas Comuns

CausaCenário Típico
Navegador/WebView desatualizadoWebView antiga do Android, páginas embutidas em aplicativos
Contexto não seguroSites HTTP (exceto localhost), file://
Recursos cross-origin mal configuradosCDN/CORS corporativos causando falhas na decodificação de imagens (se manifestando como anomalias de funcionalidade)
Limitações de memória/abasDispositivos móveis com pouca memória, políticas corporativas de "uma aba apenas"
Interferência de extensõesPlugins de privacidade que modificam o comportamento da API Image

Solução por Plataforma

Windows / macOS (Desktop)

  1. Use a versão estável mais recente do Chrome / Edge / Firefox / Safari.
  2. O Any3D deve ser acessado exclusivamente via HTTPS.
  3. Tempo de uso do ecrã no macOS e Segurança Familiar no Windows, se restringirem downloads ou acesso a mídias, podem afetar a decodificação de imagens grandes — teste com uma conta de administrador.
  4. Área de Trabalho Remota (RDP): Texturas de resolução muito alta podem falhar na decodificação em ambientes com GPU fraca; primeiro teste com imagens pequenas.

Linux

  1. Atualize o Chrome/Firefox; em ambientes Wayland, se a decodificação por GPU estiver anormal, tente comparar com uma sessão X11 (pouco comum).

iOS / iPadOS

  1. A partir do Safari 14+, o suporte é melhor; mantenha o sistema iOS atualizado.
  2. O navegador embutido no WeChat frequentemente tem um kernel desatualizado → abra no Safari.
  3. Proxy Privado do iCloud / Restrição de Conteúdo Adulto normalmente não bloqueia createImageBitmap, mas pode bloquear hospedagens de imagens cross-origin — certifique-se de que as texturas do modelo sejam de mesma origem (same-origin) ou acessíveis.

Android

  1. Atualize o Chrome e o Android System WebView (Configurações → Aplicações → Mostrar aplicações do sistema).
  2. Navegadores nacionais em modo de compatibilidade → mude para o Chrome.
  3. Bem-Estar Digital / Family Link, quando restringe atividades em segundo plano, não afeta diretamente a API, mas pode bloquear o upload de arquivos grandes.

Rede, VPN e Intranet Corporativa

CenárioDescrição
VPN corporativaSe as texturas do modelo trafegam via CDN da intranet, erros de CORS ou certificados podem causar falhas na decodificação — haverá erros de rede no Console
Proxy transparenteSe substituir ou corromper as respostas de imagens, createImageBitmap pode rejeitar
Intranet apenas HTTPContexto não seguro, a API pode estar indisponível ou com comportamento restrito
Zero Trust / Inspeção SSLCertificados autoassinados precisam ser importados como confiáveis; caso contrário, o carregamento de recursos falha

Sugestão: Desconecte a VPN, troque para um hotspot e teste com um modelo geométrico puro sem texturas externas — se o modelo puro funcionar mas o com texturas falhar, investigue primeiro a rede/CORS.

Políticas Corporativas e Controles Parentais

  • Intune App Protection pode restringir "Salvar como/Download", afetando indiretamente o fluxo de seleção de imagens pelo usuário, mas a API em si ainda deve existir — teste no Console para diferenciar.
  • Supervisão de iPads na escola: Proibir o "App Ficheiros" não afeta a API, mas influencia o método de upload; utilize um canal de upload suportado.
  • Controles Parentais de DNS no Roteador: Se bloquear o domínio do Any3D, todo o site fica indisponível, não apenas o createImageBitmap.

Correção Passo a Passo (Geral)

  1. HTTPS + navegador atualizado + reinicialização.
  2. Janela anônima para isolar extensões.
  3. Abrir no navegador do sistema, não no WebView do aplicativo.
  4. Verifique simultaneamente se Web Worker e OffscreenCanvas também estão com alertas.

Auto-Teste Rápido

typeof createImageBitmap !== "undefined"

Avançado (requer HTTPS e uma URL de imagem acessível):

fetch("https://example.com/favicon.ico")
  .then((r) => r.blob())
  .then((b) => createImageBitmap(b))
  .then(() => console.log("ok"))
  .catch(console.error);

Resumo

Problemas com createImageBitmap geralmente são causados por WebView desatualizada, ausência de HTTPS, ou VPN/intranet impedindo o carregamento de recursos. Atualize a WebView por plataforma, teste trocando a rede e isole extensões; a rota de processamento de imagens do Worker normalmente será restaurada.

Apoie-nos