PDA

Volledige versie bekijken : Debugger en debugger location


FredericCox
%Europe/Berlin %610 %2008, 14:39
Hoi,

Wanneer ik een swf publish is die 700kb en krijgt de gebruiker (sommige! niet allemaal :s) bij een error een melding hiervan via de flash debugger. Nu wou ik dit vermijden en gebruik ik telkens export release build. De swf is nu 400kb maar nog steeds krijgen sommige gebruikers die error messages of in het begin van de applicatie de vraag waar de debugger locatie is?

Hoe krijg ik dit allemaal weg?

TheDutch
%Europe/Berlin %812 %2008, 19:30
Weet je 100% zeker dat het geen cache probleem is. Dat ze dus de oude debug versie bekijken ipv. de nieuwe goede versie? Daar lijkt dit namelijk erg sterk op, kan zowat niet anders :).

FredericCox
%Europe/Berlin %866 %2008, 20:48
Ik vermoed ook zoiets.. ik bekijk het verder

FredericCox
%Europe/Berlin %867 %2008, 20:49
kan je dat cachen tegenhouden met .swf?nocache=new Date ofzo?

TheDutch
%Europe/Berlin %290 %2008, 06:57
Je kunt in de HTML met JavaScript wel zo'n URL variable toevoegen. Wanneer je de standaard templates van Flex 3 gebruikt, kan je het volgende doen:

1. Ga binnen je project naar de "html-template" folder.
2. Open in een text editor het bestand "AC_OETags.js".
3. Zoek daar naar de functie "AC_AddExtension" en vervang deze door:

function AC_AddExtension(src, ext)
{
var nocache = new Date().getTime();

if (src.indexOf('?') != -1)
return src.replace(/\?/, ext + '?nocache=' + nocache + '&');
else
return src + ext + '?nocache=' + nocache;
}

Mensen zonder JavaScript moeten maar zorgen dat ze de cache goed weggooien, want daar is niet zoiets handigs voor neer te zetten. Gelukkig heeft zo goed als iedereen JavaScript beschikbaar in de browser :).

ps. Nadeel is wel dat de gebruiker bij elk bezoek de hele SWF moet downloaden omdat cache niet meer bestaat voor deze SWF. Je kunt hiervoor nog een conditie inbouwen waarmee je een tijd range bepaalt waarin er geen cache gebruikt mag worden, bijvoorbeeld de komende twee weken.
ps2. Je kunt natuurlijk ook gewoon de SWF naam veranderen en die naam doorvoeren in de HTML template. Wellicht is dat voor nu de snelste oplossing.

FredericCox
%Europe/Berlin %744 %2008, 17:52
Ik kan echter bevestigen dat de release versie getoond wordt en niet de debug versie :s

Op desbetreffende laptop(firefox) cache gecleared(meermaals) op server de swf verwijderd en release versie geupload, nocache parameter meegegeven in de index.php en dan dit:

http://www.frelive.net/debug.png

Ik heb geen idee wat het probleem hier dan is.. :s

TheDutch
%Europe/Berlin %762 %2008, 18:18
Hernoem de SWF eens en probeer nog eens.

FredericCox
%Europe/Berlin %931 %2008, 22:21
Dat heb ik net gedaan en is getest.

Nog steeds dat debugvenster nadat de applicatie is ingeladen. Alleen in firefox trouwens, niet in IE! Cache clearen in firefox als extra lost ook het probleem niet op... :s

TheDutch
%Europe/Berlin %242 %2008, 05:49
Aantal dingen:

1. Maak een verandering in de SWF. Release deze (bin-release) en zet hem voor de klant neer.
2. Zorg dat alle cache leeg gemaakt wordt en zet er desnoods Charles tussen en zeg tegen hem dat cache niet geaccepteerd wordt, dan heb je zeker geen cache.
3. Bekijk de SWF en zoek naar de aanpassing bij 1. Als je deze vindt is de SWF nieuw, zo niet dan een cached versie.
4. Mocht je het probleem hierna nog hebben terwijl de SWF nieuw is, installeer dan Flex Builder 3 Final en release daar de SWF mee ipv. met de beta versie. Mocht je problemen hebben met de trial dat hij expired geeft al direct na installatie moet je mij maar even PBen(!).

Succes :).

FredericCox
%Europe/Berlin %492 %2008, 11:48
Het probleem ongeveer gevonden. Nuja het probleem niet zozeer maar wel een oplossing.

Flashversie op de laptop waar de debugger kwam was 9,0,45 en na het installeren van 9,0,115 (laatste nieuwe) is het probleem opgelost.

Zeer vreemd... enig idee wat dat kan zijn?

TheDutch
%Europe/Berlin %494 %2008, 11:51
Heb je wel de debugger versie van 9.0.115 geinstalleerd?

FredericCox
%Europe/Berlin %513 %2008, 12:19
waar vind ik die dan? Is er een verschil tussen een flash player en een debugger?

TheDutch
%Europe/Berlin %655 %2008, 15:43
Er bestaan twee soorten Flash Players; De Flash Player en de debug versie van de Flash Player. Die debug versie laat debug informatie zien wanneer de SWF dat wilt en de andere niet. Jouw probleem met die popup zie je alleen met de debug versie, dus waarschijnlijk zie je hem nu niet meer omdat je de gewone versie hebt geinstalleerd. Dat betekend dat je probleem niet écht is opgelost want mensen met een debug versie van de Flash Player zien die popup waarschijnlijk nog steeds :).

Hoeveel van die stappen in post #9 heb je doorlopen?

FredericCox
%Europe/Berlin %975 %2008, 23:24
Alle 4 :)

Maar een doorsnee gebruiker geraakt niet aan die debug player waarschijnlijk? Die zit alleen bij Flash zelf?

TheDutch
%Europe/Berlin %208 %2008, 05:00
Zonder debug versie van de Flash Player kan je die popup nooit(!) krijgen :).
Die kan je hier downloaden: http://www.adobe.com/support/flashplayer/downloads.html