dati persistenti in Actionscript 3?
-
28-09-2019 - |
Domanda
Quali pacchetti e / o classi voglio guardare in quando sto cercando di fare un programma Flash che verrà eseguito su desktop multipli e piattaforme mobili e voglio utilizzare i dati persistenti?
Modifica
Sto lavorando su un programma che permetterà alle persone di studiare alcuni testi a seguito di un programma di studio quotidiano. Il testo è diverso ogni giorno, e voglio ogni individuo di essere studiando la stessa cosa. Ho intenzione di esportare questo per Proiettori per Mac / Windows e mi piacerebbe per permettere alle persone di utilizzarlo su dispositivi mobili. Preferibilmente, il programma non dovrebbe richiedere la connettività internet.
Soluzione
Mi sono imbattuto in questo problema solo poche settimane fa mi. ho trovato una vecchia classe "as3preferenceslib" on-line, ripulito, fissa alcuni degli errori, e ora funziona benissimo. ecco il mio filo SO: 2 - Dati Persistenza
Mi ricordo che ci sia qualche problema con il codice, ma quello che ricordo è nella setValue () funzione Preferences.as:
else if (value is int)
{
prefItm.value = s_int;
bytes.writeByte(value); //change this to bytes.writeInt(value);
}
Altri suggerimenti
Se si desidera applicazioni desktop con Flash che si deve utilizzare AIR che fornisce classi come file e FileStream per l'interazione con il file system, così come molto di più per l'interazione con il sistema operativo.
Inoltre, se si desidera che i dati da sincronizzare tra tutte le varie istanze di applicazioni (ad esempio, così cambia il client desktop verrà visualizzato il telefono cellulare come bene) allora si sta andando a necessità di istituire un back- end che possono scrivere in un database e servizi di uso di internet per aggiornare i dati nella propria applicazione.
Un approccio semplice sarebbe un / stack di PHP MySQL, usando qualcosa come AMFPHP alle comunicazioni manico tra Flash e il back-end. Ogni volta che si effettua un cambiamento di un cliente, poi, si spingono che il cambiamento fino al server e viene salvato. È App, quindi, possibile verificare con il server ogni volta che si inizia a vedere se ci sono nuovi dati.
Ha senso? Si tratta di una risposta piuttosto ampio, ma è una bella ampia domanda. Se si ha familiarità con la tecnologia back-end e sto equivoco tua domanda si prega di lasciare un commento in tal senso e vedrò se non posso dare una mano. :)
Ok, quindi il gioco è essenzialmente chiedendo la piattaforma di sviluppo di app Graal santo. Ed è necessario che sia facile e sincronizzati su più piattaforme senza una connessione internet. Risposta breve, non si sta andando a ottenere questo fatto all'interno di qualsiasi lasso di tempo che può essere descritto come "breve" o anche "ragionevole". Flash non è supportato su Iphone. Nonostante il codice di base essendo riutilizzabile si dovrà progettare e realizzare interfacce utente separate per desktop e comunque mobili. Affinché l'applicazione al lavoro senza una connessione internet si sta andando a necessità di programmare tutte le guide di studio in esso in anticipo e spero nessuno ha loro dispositivi calendario impostato in modo errato.
Sei la cosa migliore da fare è quello di rendere una pagina web e di richiedere una connessione web e un browser. In questo modo si effettua un back-end, anche una sola interfaccia utente se non avete il tempo, e la sua tutti sincronizzati e aggiornati. E si può modificarlo con gli aggiornamenti immediatamente spinto per l'utente.
In caso contrario, si sta andando ad avere per scopo taglio o assumere alcuni devs / tester.
Adobe AIR 2.5 è supportato su desktop, Android e iOS (forse anche altri). A differenza di pagine web, applicazioni AIR sono installati e necessità di non fare affidamento su connessione internet. Ma a volte , quando la connessione è disponibile, è possibile aggiornare i testi e di convertirli nel formato. Non siete nemmeno costretti a utilizzare Flex per fare tutto. Se si dispone di contenuti Sprite-based in ActionScript, è possibile adattarlo alle WindowedApplication di AIR mettendolo in rawChildren e lo hanno scalato con l'applicazione.