bygge en stationær flickr uploaderen med luft

, opbygge en stationær flickr uploaderen med luft,,,,, andel,,,,,,,,,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' ikke gå glip af det.,,,,, i denne forelæsning, du vil bygge en stationær flickr image uploaderen ved hjælp af as3 /flickrapi og eksporterende anvendelse som en app.,,,, trin 1: skabe en ny flex - projektet, der begynder med at åbne flex bygmester og skabe et nyt projekt ved at slå "fil > nye > flex - projektet".gå videre og give deres navn og sted.den vigtigste grund til at bekymre sig om her, er "anvendelse af type", sørge for, at det er fastsat, at "stationær (løber i adobe luft), trin 2: downloade nødvendige biblioteker, før vi begynder programmeringen, vi er nødt til at hente de biblioteker, vi skal bruge til dette projekt.disse biblioteker omfatter corelib fra adobe og naturligvis flickr as3 bibliotek, du bliver nødt til at få den seneste bygge af flickr as3 api via svn, fordi der er et problem med "overføring" funktion af de frigjorte bygger, der ikke er blevet fastsat endnu.,,, trin 3: biblioteker projekt mappe med din biblioteker downloadede, er vi nødt til at flytte dem til vores projekt mappe.få "corelib" og sejle til "kom" mappe inde i "src" mappe.nu skal du åbne dit projekt mappe i et nyt vindue og åbne "src" mappe.drag "kom" mappen til dit projekt er "src" mappe. i den flickr api - mappe, vil du finde en lignende sag struktur som "corelib" mappe.bore ned i "src > kom > adobe > webapis" mappe og tag "flickr" mappe.flyt den mappe til projektet folder i dette register "src > kom > adobe > webapis." gå tilbage til flex bygmester og genopfriske din pakke opdagelsesrejsende.nu skal de se biblioteker, du har downloadet dukker op i dit projekt mappe.,, trin 4: oprettelse af brugergrænsefladen - del 1, vi vil ikke kun være at uploade billeder til vores flickr - konto, men titlen, mærker, og en beskrivelse, så vi får brug for den rette felter., sæt dine dokument størrelse, 320x400.højreklik på din flex - projektet mappe og udvælge "egenskaber".gå ned til flex - de panel, og anføre følgende kode ind i "yderligere de argumenter," område "- default størrelse 320 415,".skift til design, åbne komponenter panel og trækker et billede komponent.sørg for at give billedet komponent et id - kort, med titlen "imagepreview", som dens højde - 205 pixels og begrænse omfang til at være 10 pixels fra venstre, højre, på toppen af den opfattelse i layout - panelet.næste, hiver to textinput komponenter på scenen og stak dem oven på hinanden med en polstring af 10 pixels mellem dem begrænse dem begge til 10 pixels fra venstre og højre.giv det første område et id "imagetitle" og sætte teksten værdi "image".giv det andet område en id "imagetags" og en tekst værdi af "mærker".,, løntrin 5: oprettelse af brugergrænsefladen - del 2, så vidt vi har en forsmag område for vores udvalgte image, områder, til at gå ind i et afsnit og - mærker for vores image.endnu et stykke mangler data, en beskrivelse.gå til komponenter panel og trække en tekst område komponent ud, og det er under et område.sæt den højde, 70 pixels og begrænse bredden til 10 pixels fra højre og venstre.give teksten område en id "imagedesc" og tekst værdi af "billede beskrivelse.", nu er alt, hvad vi har brug for nu, er en særlig knap, en upload knap og et fremskridt, bar til at overvåge vores uploade fremskridt.gå videre og trække to knapper til udstillingsareal og en statusbar.den første knap 10 pixels fra venstre og begrænse det til den stilling.giv det et id "selectbtn" og dens etiket "vælg".den anden knap 10 pixels fra højre og begrænse det til denne holdning.fastsætte sit id "uploadbtn" og kalder det "overføring".holdning de fremskridt, bar i midten af to knapper og begrænse det til midten af ansøgningen.lad os give det en id "pbar". deres anvendelse bør ligner billedet nedenfor:,, trin 6: regning indeks, skift til kode opfattelse inden for flex bygmester og finde input områder, du har skabt.de tre områder, du skal bruge, er "titel", "mærker" og "beskrivelse" områder.Click inside of each one and add this code ,tabIndex="n",, replacing "n" with a sequential number, like so:, <mx:Image x="10" y="10" width="298" height="205" id="imagePreview"/> <mx:TextInput x="10" y="223" id="imageTitle" width="298" text="Image Title" tabIndex="1"/> <mx:Button x="10" y="364" label="Select" id="selectBtn" click="selectImageFile(fileToOpen)"/> <mx:Button x="243" y="364" label="Upload" id="uploadBtn" click="uploadFile(event)"/> <mx:ProgressBar x="91.5" y="360" width="135" id="pBar"/> <mx:TextInput x="10" y="253" width="298" text="Tags" id="imageTags" tabIndex="2"/> <mx:TextArea x="10" y="283" width="298" height="69" text="Image Description" id="imageDesc" tabIndex="3"/>, , Step - 7: tegn til en flickr api - nøgle, først over til flickr og tilmelder sig en api - nøgle.,, flickr vil bede dig om at kalde din ansøgning og give det en beskrivelse, når du udfylder de relevante oplysninger og er enige i, at de vilkår og betingelser, klik forelægger, og så vil du på en skærm, flickr direkte med deres api - nøgle og hemmelig nøgle til din app.hold api centrale og hemmelige handy, du får brug for dem hurtigt.,, trin 8: skabe en klasse at forbinde til flickr, lad os skabe en ny actionscript klasse, der vil tjene som vores forbindelse til flickr.tilbage til flex bygmester og skabe en ny actionscript klasse fra fil > nye menu, hedder det, flickrconnect,.gå og pasta i disse "import" kommandoer og jeg forklarer deres formål., pakke (import - flash. net. sharedobject; //, der er nødvendige for at sætte system småkager import flash.net.urlrequest; import flash. net. navigatetourl; //åbner tilladelse vindue i browseren import mx. kontrol. alarm; //vi bruger to alarm vinduer i vores app import mx. begivenheder. closeevent; //opdager, når indberetningen vindue er lukket //import alle de flickr api - klasser for at sikre, at vi har alt, vi behøver import kom. adobe. webapis. flickr. *; import kom. adobe. webapis. flickr. begivenheder. *; import kom. adobe. webapis. flickr. methodgroups. *; med denne klasse, vi skal videregive flickr vores api - centrale og app 's hemmelig nøgle, og til gengæld får vi en godkendelse tilken, som vi skal opbevares som en kage på brugerens system.når vores app er nøglen til flickr - det vil åbne en browser vindue at brugeren til at bekræfte anvendelsen af deres flickr - konto, når de vælger "godkende", og de vender tilbage til app, vil de blive mødt af en indberetning vindue og bad dem klik "okay", når de har givet tilladelse til app med flickr.det vil sende dig for sikkerhed og en lagring af, at et tegn på lokalt plan for at omgå autentificeringsprocessen, hver gang den app er åbnet.,, trin 9: skabe flickr instans og nulstille service, offentlig klasse flickrconnect {offentlige var flickr: flickrservice; private var frob: string; private var flickrcookie: sharedobject = sharedobject. getlocal ("flexflickruploader"); //butik flickr - bevis i en småkage offentlig funktion flickrconnect() {flickr = nye flickrservice ("xxxxxxxxxxxxxxxxxxxxxxxxxxxx"); //træde flickr api - nøgle flickr.secret = "xxxxxxxxxxxxxxxx"; hvis (flickrcookie & & flickrcookie. data. auth_token) //- kage og alle tegn, der findes, tegn (flickr.token = flickrcookie.data.auth_token;} andre //, hvis ikke, så autentificering (flickr. addeventlistener (flickrresultevent.auth_get_frob, getfrobresponse); flickr.). getfrob();}}, i kodeksen over vi begynde med at erklære 3 variabler, som vi bruger i denne klasse."flickr" variabel er fastsat som offentlige, fordi vi vil henvise dette objekt i den forælder, anvendelse, og de to andre variabler er private, fordi de er specifikke for denne klasse.i klasse konstruktør, nulstille flickr genstand ved at fastlægge det lige til en ny "flickrservice" og går i din flickr api - nøgle som en snor.under den hemmelig nøgle af vores nyoprettede tjeneste for de vigtigste givet af flickr - når du ansøgt om en api - nøgle.under vores erklæringer, vi først se, om vores system - eksisterer, og hvis en "autentificering tegn" er blevet fastsat.hvis begge disse argumenter lige sandt, vi går videre og sætte "symbolsk" ejendom af vores flickr service svarende til autentificering symbolsk opbevares i vores kok.hvis en af disse argumenter er ikke sandt, vi fortsætter processen autentifikation af ansøgningen.tilføje og tilfælde til at lytte til flickr - service.den type er af "flickrresultevent", og vi lytter til "auth_get_frob".ind i funktionen navn "getfrobresponse".starte en ny linje og gennemføre "getfrob()" funktion af flickr api -.,, frob, flickr definerer ikke begrebet "frob" i deres api - dokumentation, men en kort forklaring er anført nedenfor.,, en frob 'er en forbandelse, indkodet snor, at flickr - servere hånd som en del af den godkendelsesprocedurerne; en mere traditionel benævnelse, for det ville være "pædofil".,, en mere detaljeret definition findes her.,, trin 10: få frob, funktion, getfrob(), vil sende vores api - nøglen til flickr og hvis nøgle er gyldig, flickr vil vende tilbage en snor til os.de vil blive videregivet til en anden frob funktion, der vil bygge et login url, at vi sender brugeren til at logge ind i deres flickr - konto og give vores app tilladelse til at uploade fotos, privat funktion getfrobresponse (ref.: flickrresultevent): ugyldig (hvis (ref. succes) (frob = string (frob begivenhed. data.) var auth_url: string = flickr. getloginurl (frob, authperm. slette); //genererer et login url navigatetourl (nye urlrequest (auth_url), "_blank"); //åbner browser og beder om din kontrol alarm. (se "luk vinduet, efter du login til flickr -", "flickr - tilladelse", alert.ok, nul, oncloseauthwindow)}}, når vi får et svar tilbage fra flickr med frob, vi ser efter, om det svar, returneres en "succes".når der er fastsat en frob var vendt tilbage, vi tildeler data tilbage til en række variable, skabe en snor variabel, der vil være autentificering url, - - og så bruge et af de as3 flickr api - bygget i funktioner, som vil skabe vores login url og overdrage sin værdi til vores "auth_url" snor.den næste del bør være bekendt for alle, der har arbejdet i glimt i et stykke tid.use flash er bygget i "navigatetourl" funktion at åbne flickr i browseren og hurtig brugeren til at logge på og give tilladelse til, at vores app adgang til deres konto.som en del af denne proces, som vi stiller flickr for "udgaar" tilladelse, som er det højeste niveau en app, kan få adgang.med den grad af adgang, vil vi være i stand til at uploade, redigere, tilføje, slette.det er lidt overdrevet, men jeg valgte at holde det på det niveau, som en henvisning til deres egne projekter. vi på samme tid er rettet til flickr s indlogningsside, vores app skaber en indberetning vindue.dette vindue skal omfatte den besked, "luk vinduet, efter du login til flickr".når brugeren har logget ind i flickr og vendte tilbage til app, vil de slå "okay", som vil kalde en anden funktion, som vil få adgang tegn fra flickr.,, trin 11: få adgang eller offentlige funktion oncloseauthwindow (ref.: closeevent): ugyldig (flickr. addeventlistener (flickrresultevent.auth_get_token, gettokenresponse); flickr. godk. gettoken (frob)), og denne funktion blot beder flickr for adgang tegn, flickr - vil se, at vores app (identificeret ved vores frob), er blevet godkendt og vil vende tilbage til den symbolske.,, trin 12: adgang tegn og system - privat funktion gettokenresponse (ref.: flickrresultevent): ugyldig (hvis (ref. succes) (var - authresult: authresult = authresult (ref. data.)); flickr.token = authresult.token; flickrcookie.data.auth_token = flickr.token; flickrcookie. flush(); //sæt kage på lokale edb -} den sidste opgave i vores flickrconnect klasse vil acceptere den symbolske sendt fra flickr og opbevarer det i et system, cookie.endnu en gang kontrol for at sikre, at arrangementet var vellykket.hvis det skulle lykkes at genfinde et tegn fra flickr skabe et tilfælde af "authresult" og overdrager det til en variabel, der hedder "authresult".den værdi af den variable var lig med den ", men" værdi af de returnerede data.sæt "symbolsk" ejendom af vores flickrservice til "tegn" tilhører vores "authresult" variabel.næste, tildele en ejendom "auth_token" til den kage, vi har skabt i begyndelsen af klasse (flickrcookie) og svarer til "flickr. tegn".det eneste, der er tilbage, er at sætte kagen på vores lokale computer, så gør vi det af med "flush()" funktion af sharedobject i as3. nu, hvor vi har en time til at forbinde til flickr og få vores autentificering og tilladelser, kan vi begynde med kodning, den vigtigste del af vores ansøgning.,, trin 13: import - og variabler, i vores vigtigste manuskript, vi importerer tre klasser; den klasse, vi har lige skabt, bygget i flex alarm klasse og uploade klasse af flickr as3 api. af de fire variabler, vi skal bruge, er det første, vi er nødt til at skabe, er et tilfælde af flickrconnect klasse vi lige der, navn, at klasse "flickrlogin".skabe en variabel "uploaderen" med et tilfælde af "overføring" og bestå i flickr instans fra vores flickrconnect klasse.skabe yderligere to variabler, både af "journal" type.en af disse variabler, vi kalder "journal" de andre "filetoopen".,,, import flickrconnect; import mx.controls.alert; import com.adobe.webapis.flickr.methodgroups.upload; private var flickrlogin: flickrconnect = nye flickrconnect(); private var uploaderen: uploade = nye uploade (flickrlogin. flickr); private var fil: fil private var filetoopen: fil = fil. documentsdirectory;,, trin 14: sæt billede og udvælge funktion, nu hvor vi har vores import og variabler, der er oprettet, er vi nødt til at indlede vores anmodning.i initialization proces, der fremskridt bar (pbar) usynlig.vi vil kun have de bar at være synlig, når vi overfører et billede. den næste opgave er at åbne filen browser for brugeren at vælge et billede.,,, privat funktion init(): ugyldig (pbar.visible = falske} privat funktion selectimagefile (root - fil): ugyldig (var - imgfilter: filefilter = ny filefilter ("billeder", "* jpg; *. gif; *. men heller ikke dér er menneskene sikre"), rod. browseforopen ("åbne" [imgfilter]), rod. addeventlistener (event.select, fileselected)}, gå 15: læs indgive oplysninger og ajourføring af input - områder, skaber en funktion, der hedder "fileselected" der er ild, når brugeren udvælger et billede.denne funktion vil også læse det billede er file navn og url.ajourføring af "titel" input område med de udvalgte filens navn og mål "image forpremiere", idet det er url til url databasen valgt.,,, privat funktion fileselected (ref.: begivenhed): ugyldig (imagetitle.text = filetoopen.name; imagepreview.source = filetoopen.url;}, trin 16: uploade filen, og spore fremskridt, skabe to funktioner, en til at håndtere uploading af billedet til flickr og andre til at følge dens udvikling via statusbar. navn den første funktion "uploadfile" med en form for "mouseevent".i denne funktion, som den variabel, der skabte vi tidligere "journal" type "journal", og at passere i url af billedet er udvalgt af brugeren.tilføje to lyttere til variabel.den første lytter, vil være en "dataevent" lytter til overføring slut og dets mål funktion vil blive kaldt "uploadcompletehandler".den anden til at lytte, vil være et fremskridt, hvis, og dens mål vil være funktion "fremskridt", skaber den anden funktion og kalde det "fremskridt".inde i den funktion, der fremskridt bar til synlige og en kilde til, at "journal".,,, privat funktion uploadfile (ref.: mouseevent): ugyldig (file = nye fil (filetoopen. url); fil. addeventlistener (dataevent.upload_complete_data, uploadcompletehandler); fil. addeventlistener (progressevent.progress, uploaderen om). - upload (sag, imagetitle.text, imagedesc.text, imagetags. tekst);} privat funktion om (ref.: progressevent): ugyldig (pbar.visible = sandt. pbar.source = fil}, skridt 17: upload færdig, når de sender, er fuldstændige, flickr - vil sende et svar til vores app, fordi vi ved, at uploade har færdig.flickr svar tilbage til os i form af xml, vi bliver nødt til at analysere det xml - og fastlægge de svar, om det er en "okay" eller noget andet.vi har brug for at vide, er, om svaret er "ok" så iværksætte en indberetning vindue, hvoraf det fremgår, at uploade lykkedes, eller hvis den reaktion, hvis alt andet. det betyder, at uploade mislykkedes, og vi skal give brugeren ved,.,,, privat funktion uploadcompletehandler (ref.: dataevent): ugyldig (pbar.visible = falske. spor ("upload færdig"), var xdata: xml - = nye xml (ref. data); spor (xdata); hvis (xdata [0]. attribut ("stat" = = "okay") (alarm. (se "uploade succes", "uploade status");} andre {alarm. vis (". ikke", "uploade status");}}, gå 18: kalder funktioner og indlede anvendelse på dette punkt, hvis du tester din ansøgning, vil intet ske.det er, fordi vi ikke har tilføjet klik funktioner til vores knapper, og endnu vigtigere, vi har ikke indledt vores anvendelse. i dit vigtigste anvendelse er en kode, gå ned og finde koden til knapper, vi har skabt ved hjælp af vejledningen i begyndelsen af denne forelæsning.vi bliver nødt til at tilføje "klik" stab på hver knap til at fortælle dem, hvilken funktion at gennemføre, når de er tændte., udvælge knap ringer, selectimagefile (filetoopen), med variabel, filetoopen, der blev vedtaget på det.,,, < mx: knap x = "10" y = "364" etiket = "vælg" id = "selectbtn" klik = "selectimagefile (filetoopen)" />, uploade knap ringer, uploadfile (tilfælde), og vil gå i en begivenhed i det.,,, < mx: knap x = "243" y = "364" etiket = "overføring" id = "uploadbtn" klik = "uploadfile (ref.)" /> nu alle, vi skal gøre, er at indlede vores anmodning.vi gør dette ved at tilføje en kode til toppen af vores sag under "windowedapplication" element.det eneste vi skal gøre er at tilføje til den funktion, init(), med det, applicationcomplete,.det skal se sådan ud:,,, < mx: windowedapplication xmlns: mx = "http://www.adobe.com/2006/mxml" layout = "absolut" applicationcomplete = "init()" >,, skridt 19: prøve din ansøgning, når du er færdig med indkodning af din ansøgning, er det tid til at prøve at sikre, at det fungerer. klik på "ser", flex bygmester at indsætte anvendelse. ansøgningen vil advare dig, at kun klik "okay", efter du logge ind på flickr og give tilladelse til app adgang til din flickr - konto.,,, gå 20: vælg et billede til at uploade, efter at trykke "okay", vil du se dit blanke anvendelse på input.,, klik "vælg" og sejle til et billede på dit lokale computer.når der vælges, klik på "åbne".nu skal de se et glimt af det billede, du har valgt.gå videre og give det en titel og en beskrivelse.for nogle hundetegn, som går sammen med det billede, og at indføre dem i "mærker" område, adskilt ved kommaer.klik på "overføring".,, hvis du var en succes, bør du se følgende skærm.,, bare for at være sikker på det billede, uploadet med succes, smut over til din flickr - konto for billede, du har lige uploadet.,, gå 21: eksport som luft, men nu ved vi, at vores app fungerer ordentligt, - kan eksportere det som en ansøgning.for at gøre det, klik "fil > export > overgang bygge".der er ikke nogen indstillinger om den første komponent, som vi er nødt til at ændre, så klik "næste" og gå til den næste vindue., skabe et certifikat ved at udfylde "udgiver navn" og "kodeord" områder.find et sted at gemme det certifikat, og give den et navn.klik på "afslut" og vent på din luft app bygge.,, indgåelse, din app er færdig, den virker, og du har udført det ud i luften.hvad nu?nu kan du uddybe denne ansøgning med flere af api - funktioner, eller du kan anvende som., tak for at du har tid til at arbejde med denne lektion, jeg håber, du nød det.og husk...holde læring.,

















Previous:
Next Page: