Flex X Cache - 1° Round

Uma palavra de 5 letras e que incomoda tanto os desenvolvedores. mais seus problemas estão próximos do Fim, abaixo um pouco mais perto da solução.

No meu caso vou explicar em PHP, e se alguém quiser me enviar em outra linguagem eu agradeço muito. Quando você cria um projeto, o flex cria a seguinte estrutura de pastas:

html-template
    AC_OETags.js
    index.template.html
    playerProductInstall.swf
libs
src
    main.mxml

Mais para que serve o index.template.html?

Este arquivo é responsável por criar o arquivo que invocará o SWF na nossa aplicação. Então é com este cara que vamos brincar. Primeiro vamos renomea-lo para ${application}.template.php. Quando você compilar o projeto verás que agora não mais existe um arquivo main.html e sim main.php. Então vamos editar este arquivo.

No inicio, primeira linha do arquivo adicione o seguinte código:

<?php
header("Cache-Control: no-cache");
header("Pragma: no-cache");
?>

Agora com estas linhas acabamos com o cache do main.php, mais o SWF ainda ficará em cache. Mais como tudo tem solução, altere o seguinte bloco:

} else if (hasRequestedVersion) {
    // if we've detected an acceptable version
    // embed the Flash Content SWF when all tests are passed
    AC_FL_RunContent(
            "src", "${swf}?cache=<?php echo microtime() ?>",
            "width", "${width}",
            "height", "${height}",
            "align", "middle",
            "id", "${application}",
            "quality", "high",
            "bgcolor", "${bgcolor}",
            "name", "${application}",
            "allowScriptAccess","sameDomain",
            "type", "application/x-shockwave-flash",
            "pluginspage", "http://www.adobe.com/go/getflashplayer"
    );

Bom, para aqueles que quiserem testar e mandar outras linguagens de programação, agradeço e postarei.

Mais como mem tudo é perfeito, aconselho deixar la o index.template.html, pois executar o projeto ele reclamará do main.html. Então seu projeto ficará assim.

html-template
    ${application}.template.php
    AC_OETags.js
    index.template.html
    playerProductInstall.swf
libs
src
    main.mxml

Fique por dentro de nossas novidades, ideias e atualizações