Por que o Firefox não pode executar arquivos .swf locais?


68

Meu objetivo é tentar executar arquivos .swf no Firefox e NÃO como um player independente.

Ao tentar executar arquivos .swf locais no Firefox 29.0 (atualmente em 14.04), o navegador abre a janela de prompt Abrir com / Salvar arquivo, mesmo se o navegador tiver o plug-in Flash instalado. Clicar com o botão direito do mouse no arquivo e clicar em Abrir com ...> Firefox apenas abre o navegador em uma nova guia e, em seguida, o prompt para Abrir com / Salvar arquivo novamente. A seleção do Firefox por essa janela de prompt ainda fará o Firefox abrir o prompt novamente em uma nova guia.

Ao acessar arquivos .swf on-line, no entanto, eles são executados normalmente e o Firefox até mostra o indicador de plug-in de aparência Lego na barra de endereços dizendo que "Adobe Flash" está ativado para o endereço do qual estou acessando o .swf.

Na guia Aplicativos das preferências do Firefox, os arquivos SWF estão atualmente definidos como "Use Shockwave Flash (no Firefox)", então não entendo por que ele não fará o que diz no caso de arquivos locais.

ATUALIZAÇÃO: Aparentemente, o Firefox possui entradas separadas "Shockwave Flash File" na guia Aplicativos de suas Preferências para diferentes tipos de mímica. Encontrei uma solução alternativa que inseri abaixo.


//, excelente pergunta! Eu realmente gosto de como você expôs isso. É fácil encontrar nos resultados da pesquisa e descreve o problema de várias maneiras diferentes, mencionando possibilidades.
Nathan Basanese

Respostas:


51

Outra opção é criar ~/.mime.typesno diretório inicial com o seguinte conteúdo:

application/x-shockwave-flash       swf swfl

Dessa forma, ele não será substituído na atualização do sistema.

Se você quiser, pode copiar, colar e executar este comando para fazer isso:

echo 'application/x-shockwave-flash       swf swfl' >> .mime.types

Nenhum comando adicional é necessário, nem mesmo a reinicialização do navegador.


11
Você quer dizer criar um documento vazio chamado .mime.types no diretório inicial e depois colocar o texto que você especificou? Além disso, que comando update-mime-database usamos depois disso?
precisa saber é o seguinte

11
Sim, um arquivo de texto simples. Não há necessidade de executar o update-mime-database com essa solução alternativa, pois esse arquivo no diretório home deve ser suficiente.
Aleh

6
muito mais simples, conveniente e funciona!
FairMiles

3
Sim, não.
1919 Aleh

3
Este é definitivamente o melhor método, sem acesso root, tão simples e, o mais importante, funciona!
TuxForLife 16/02

63

Encontrei uma solução alternativa aqui que é baseada em um thread do Arch aqui . Pelo que entendi, é apenas um problema com o Firefox que não suporta adequadamente um certo tipo de mímica.

Edite /usr/share/mime/packages/freedesktop.org.xmlcomo raiz e substitua o seguinte:

<mime-type type="application/vnd.adobe.flash.movie">

Com:

<mime-type type="application/x-shockwave-flash">

E então execute:

sudo update-mime-database /usr/share/mime

Os arquivos .swf locais estão funcionando corretamente agora.


//, testado. Funciona na minha máquina 14.10 com o Firefox 38.0. Eu recebi alguns erros estranhos no sudo update-mime-database /usr/share/mimecomando, no entanto. ➜ ~ sudo vi /usr/share/mime/packages/freedesktop.org.xml [sudo] senha para nathan: do sudo update-mime-database / usr / share / mime Tipo de mídia desconhecido no tipo 'all / all' digite o tipo 'all / allfiles' Tipo de mídia desconhecido no tipo 'uri / mms' Tipo de mídia desconhecido no tipo 'uri / mmst' Tipo de mídia desconhecido no tipo 'uri / mmsu' Tipo de mídia desconhecido no tipo 'uri / pnm' Mídia desconhecida digite tipo 'uri / rtspt' Tipo de mídia desconhecido digite 'uri / rtspu' ➜
Nathan Basanese

2
Isso parece um truque sujo para mim (em contraste com a resposta boa e funcional do arquivo de configuração no diretório inicial).
Ninguém

2
A outra resposta é muito melhor.
Aquele cara brasileiro
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.