Archive for the 'Flash' Category

De boze boze garbage collector in ActionScript 3

Sinds ik vorig jaar in september begonnen ben met ActionScript 3 te leren, en te gebruiken, ben ik al veel op het probleem gestoten waar ik niet-werkende, of maar half-werkende (ActionScript) tweens kreeg. Ik dacht altijd dat het aan mijn slechte coding skills lag, maar op termijn begon ik toch wat meer zelfvertrouwen krijgen, en besefte ik dat het probleem niet zozeer bij mij lag.

Tijdens het ontwikkelen van de site voor mijn eindwerk in december liep de emmer over: Alweer een project waarin het ActionScript tweenen niet wilde lukken. Gerrit kwam me helpen, en na even zoeken kon hij me vertellen dat de fout inderdaad niet bij mij lag, maar bij de garbage collector in de Flash Player.
Mijn probleem was vanaf dan opgelost, en in elk project waar ik nu ActionScript-matige tweens aanmaak kan ik dat probleem meteen uit de weg gaan, maar ik zie nog enorm veel vragen opduiken waarin dit exact zelfde probleem besproken wordt.

FITC Toronto Mobile Guide

Thomas is deze morgen vertrokken naar Toronto (Canada) waar hij naar FITC gaat. Vlak voor zijn vertrek heeft hij zijn Mobile Guide op zijn blog gepost. Dit is een Flash Lite applicatie die je op je smartphone kunt installeren. Op die manier heb je allerlei handige informatie over de event bij je, op elk  moment op elke plaats.

De Mobile Guide heeft volgende onderdelen:

  • Info over de event (site, grondleggers, etc)
  • Agenda van de volledige event (dagen, uren, zalen, sprekers, onderwerp, soort sessie)
  •  Plattegrond van het gebouw
  • Twitter applicatie waarmee je je vrienden op het event kun laten weten waar je bent, en wat je doet!
  • Party Guide: FITC is niet volledig als er geen bijhorende party’s zijn ;)
  • Sponsors

Het geheel ziet er ook deze keer gelikt uit.
Ga jij naar FITC Toronto? Download de Mobile Guide van Thomas hier.

Playr: De ActionScript 3 music player class!

Ik heb gisteren de laatste wijzigingen aangebracht aan de vroegere MusicPlayer class. Zoals het er nu uitziet lijkt deze klasse af, voor een eerste ronde echt gebruik, keiharde feedback en vele suggesties.

Belangrijke wijzigingen zijn:

  • Classnames, en package names zijn aangepast.
    • De klasse zelf heet nu Playr in plaats van MusicPlayer.
    • Package name is aangepast. com.noCreativity.MusicPlayer is nu com.nocreativity.playr (met dank aan Peter Elst voor de best practice tip ;) )
  • Shuffle mode toegevoegd
  • Trackprogress kan nu ook opgevraagd worden
  • Singletrack werkt nu volledig
  • Bug ivm repeat weggewerkt

Wat doet Playr?

Playr is een Flash Actionscript 3 klasse die het maken van een volwaardige music player in Flash/Flex/AIR reduceert tot enkele regels code. Of je nu maar 1 loop wilt laten spelen, of een volledige playlist wilt afspelen in Flash/Flex/AIR: Playr kan het sneller dan jij!

Playr kan je gebruiken om een enkele loop af te spelen, of voor volledige XML afspeellijsten te laten afspelen. Zowel shuffle als repeat zijn mogelijk. Ook de interactiviteit met de gebruiker kan snel worden toegevoegd.
De Playr class is ontworpen met snelheid en gemak voor ogen

Adobe AIR goes live

Adobe AIR LogoNa meer dan 1 jaar is het eindelijk zover: Adobe Integrated Runtime verlaat zijn beta fase, en is zomee officieel gereleased.

Dat is goed nieuws voor de RIA developers onder ons. Want vanaf nu kunnen we dus echte applicaties maken met de kennis die we hebben vanuit onze webdevelopment ervaringen. En het kost niets! Cooler nog: het is crossplatform!

Wat is Adobe AIR?

Adobe Integrated Runtime is een runtime omgeving die het mogelijk maakt voor RIA developers om met hun gekende technologieën zoals Flash, Flex of HTML/Javascript interactieve applicaties te maken die rechtstreeks op je computer draaien, en toch meteen in contact staan met online applicaties zoals Twitter, eBay, Pownce, of MTV.

AIR biedt een rijke API voor bestaande developers die toegang geeft tot de verschillende mogelijkheden van de computer zoals bijvoorbeeld het bestandssysteem zodat je met een kleine AIR app makkelijk een bestand kunt openen, bewerken, opslaan, of zelfs uploaden. Zo zijn er talrijke mogelijkheden.

Waarom Adobe AIR?
Menig software developer zal hier natuurlijk scheef naar kijken, en zich afvragen: “Waarom zou ik Adobe AIR gebruiken als ik VB.net of C# heb?”

Het antwoord is simpel:

  • AIR is flexibel!
    Wil je een applicatie schrijven die gebaseerd is op Flash, of op HTML en Javascript? Het maakt niet uit. AIR apps kunnen met beiden gebouwd worden.
  • AIR laat jou kiezen!
    Ben jij altijd al fan geweest van de Flash IDE? Of gaat het ontwikkelen sneller in Flex Builder? Of ligt Flash jou niet zo, en ben je meer een HTML/Javascript developer in Dreamweaver? AIR beperkt jou workflow niet: Je kunt AIR apps ontwikkelen en releasen vanuit zowel Flash, Flex Builder, en Dreamweaver.
  • AIR is vooruitstrevend!
    Tegenwoordig is het onmogelijk om ‘Windows-only’ of ‘Linux-only’ te denken. Met de hedendaagse ontwikkeling moet je gewoon met alle platformen rekening houden. Adobe AIR doet dat voor jou! Jij maakt gewoon jouw applicatie in de omgeving naar keuze, en compiled een ‘AIR’ file, die in de runtime van zowel Mac OSX als Windows alsook Linux*.
  • AIR is free! (Klink best grappig, he? :D )
    Applicaties ontwerpen in AIR kost jou niets! Als je over Flash, Flex of Dreamweaver beschikt kun je gewoon aan de slag! Waar je voor Visual Studio veel geld moet betalen om applicaties te kunnen maken, moet je voor AIR gewoon een gratis update (voor Flash, Flex Builder, of Dreamweaver ) downloaden van de Adobe site. Je betaalt niets, en je kunt zooooveel meer en je moet er niets voor bijleren! Je huidige kennis en je huidige tools zijn alles wat je nodig hebt!

Ik herinner me Adobe Live van vorig jaar nog, waar Greg Rewis regelmatig op het podium stond te roepen: ‘Is that cool?!’.
Ik heb hier maar 1 antwoord voor: This is cool!

Update: Ward heeft me attent gemaakt op het feit dat er Express versies zijn van Visual Studio die gratis te verkrijgen zijn en het mogelijk maken om gratis software te ontwikkelen binnen het Microsoft .NET framework.

* De Adobe Integrated Runtime is op het moment van dit schrijven nog niet gereleased, maar Adobe belooft om hier zo snel mogelijk verandering in te brengen. In Adobe we trust ;)

Nabaztag/tag

Zoals je waarschijnlijk wel ziet is er iets klein gewijzigd op de site: De Flashmovie die toelaat om mij een klein berichtje te sturen, via mijn Nabaztag/tag 8ball. Dat wil dus zeggen dat ik een Nabaztag/tag heb, en dat is zo sinds vorige week vrijdag!

Heel funny gadget, wat nog eens duidelijk maakt welke absolute geek ik wel ben :D

Een Nabaztag/tag is een elektrisch konijn dat je allerhande info kan vertellen.

  • Hoe zal het weer morgen zijn?
  • Heb ik mail?
  • Wat staat er in mijn RSS feeds?
  • etc…

Ook kan dit WiFi-konijn berichtjes voorlezen die het gestuurd krijgt. Vanaf nu kun jij mij een berichtje sturen met de Flashmovie bovenin deze pagina.

Toen ik deze toepassing maakte was ik aan het denken over welk dataformaat ik in Flash zou gebruiken. SWX is nog altijd ActionScript 2 only, en dus moest ik het wel bij XML laten. Gelukkig hebben ze bij Nabaztag al gehoord van open standaarden, en maken ze dus ook gebruik van XML: Helemaal top!

Ik ging dus aan de slag, en even later testte ik mijn SWF, en *TADAA* mijn eerste Nabaztag berichtje door mijn Flashmovie. De SWF online gezet op mijn site, en daar nog even testen, en toen ging het mis… Ik was (weeral) vergeten dat de security sandbox van de Flash Player niet toelaat om gegevens op te halen vanop een ander domein zonder de toelating hiervoor te vragen.
Zoals altijd ga ik op het betreffende domein op zoek naar de crossdomain.xml, en die was er dus ook… Alleen zag die er niet uit zoals ik verwachtenabaztag-crossdomain.jpg