Wie einrichten RSL (Runtime Shared Library)
Stack!
Bin ich ein wenig Probleme beim einrichten eines neuen Projekts (e-Learning), dass ich denke, profitieren viel von RSL.
Mein Fall ist so etwas wie dieses:
Main.fla - - Shell
Szenen.fla - - ich erkläre das in einer minute
Navigation.fla - - eine Art GUI
Viele Fla-Dateien - Die Lehren
Den Main wird der erste Film, um instanziiert zu werden, dann, alles, was notwendig ist von hier aus werden download.
Jeder Lektion werden in eine fla/swf-abgesehen von der "Architektur" (das ist der Haupt -, Szenen -, Navigations-und ein ganzes Bündel von Klassen aufgerufen Motor) und werden zur Laufzeit Hinzugefügt werden innerhalb der Szenen.
Des Motors ist verantwortlich für den Umgang mit sich wiederholenden und notwendigen Aufgaben, Veranstaltungen, gemeinsame Methoden, die Kommunikation mit dem server, unter anderem.
Die Navigation ist verantwortlich für die Verarbeitung von Benutzereingaben, wie die navigation (nächste/Vorherige Lektion und so), und dann geht es an den Motor, das wird manipulieren die Szenen (und es sind Kinder).
Gut, ich habe einige Einschränkungen:
Jede swf-Datei übergeben, um unsere Kunden benötigen weniger als 80kb, was bedeutet, ich bin gebunden.
Ich kann nicht kompilieren das ganze als Paket bereit zur Auslieferung.
Als Größe zählt, ich brauche Mittel, um zu lindern die Last so weit wie möglich.
So suchte ich dieser Tage eine Menge und finden Sie heraus, RSL.
Ich habe einige tests, um besser zu wissen, wie Sie diese nutzen und, natürlich, bekam in eine Falle.
Habe ich noch nicht in der Lage, meinen Blitz richtig, noch kein Erfolg mit dem "Library Path" (unter AS3-Konfiguration), noch nicht in der Lage zu kompilieren Klassen innerhalb der SWC...
Andere Sache ist, dass ich nicht die Lektionen, nur die Architektur.
Diese Lektionen werden von Menschen geschaffen wurden, die möglicherweise keine Kenntnisse in AS3 OOP - (oder Programm-Logik).
Und ich bin nicht geneigt, die Lieferung, die ganze engine (source-code), um jemand von außen, kann daran herumbasteln, so dass der ganze app (apps, in der Tat, wir produzieren Hunderte von e-learnings).
Ich glaube wirklich, ich brauche Hilfe bei einigen Dingen (die Uhr tickt):
Wie zu verwenden RSL effizient
Wie die bundle-Klassen in der SWC
Wie Paket all das ist wichtig für die ganze Arbeit, die in die SWC-Datei, und dann Lieferung nur diese SWC -
Ich weiß, dieser thread ist ein wenig lang, und ich bin zu Fragen, eine Menge Dinge, aber ich bin Rissbildung meinen Kopf gegen die Tastatur für eine Woche jetzt, und nicht in der Lage zu verwalten eingerichtet.
Danke für Ihre Aufmerksamkeit...
NemoStein
InformationsquelleAutor NemoStein | 2011-02-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es zwei Möglichkeiten, dies zu tun aus einem fla -
ist der Export der gesamten Bibliothek.
Gehen Sie zu Ihren Einstellungen für Veröffentlichungen wählen Sie nur Flash und wählen Sie dann
Export SWC
unter der Registerkarte "Flash"http://img593.imageshack.us/img593/8296/swc.png
den anderen ist der rechten Maustaste auf ein Element in Ihrer Bibliothek und wählen Sie " SWC Exportieren. Wenn Sie Probleme mit Elementen, die eine Beschränkung, dies könnte der Weg zu gehen, aber sonst würd ich empfehlen den Export der gesamten Bibliothek
Ist es wichtig, dass Sie die Verknüpfung hinzufügen-ids, um Ihre Vermögenswerte
Können Sie dies durch die Verknüpfungs-id-Spalte in der Bibliothek oder durch Bearbeiten der symbol-Eigenschaften.
Diese IDs müssen eindeutig sein, da diese Klassen-Namen, die Sie nennen Sie. Es ist eine gute Idee zu einem gemeinsamen Präfix, also sind Sie unwahrscheinlich, dass Störungen bei anderen Klassen.
http://img827.imageshack.us/img827/7820/linkageid.png
Wenn Sie Ihr Vermögen zusammengestellt, können Sie entweder fügen Sie Sie zu Ihrem Projekt-Laufzeit-Bibliothek Ordner oder Betten Sie Sie ein-by-one durch die Einstellungen oder das embed-tag. Ich benutze FlashDevelop, die es einfach macht, nicht sicher, was Sie verwenden, butI bin sicher, dass die option ist da und leicht zugänglich.
Die Verwendung Von Bibliotheken.
Was ich getan habe für das laden von assets (swf-Datei zur Laufzeit)
Warum Lauf-tim-swfs ? Gut, Sie können wirklich nicht halten, der Motor trennen, wenn Sie kompilieren es für den Inhalt. Die Idee ist, dass der Motor zuerst geladen wird und lädt dann die Konfiguration, die ihm sagt, wie zu handhaben Bibliotheken und wo Sie zu finden jede.
mein setup/Gestaltung vereinfachte ist so etwas wie das
Habe ich eine default-Konfiguration xml-Datei, wo die Bibliotheken Hinzugefügt werden. Für meine Zwecke, ich weiß, der erwartet, dass Bibliotheken so habe ich die xml-tags mit predifined-ids wie diese:
auf der code-Seite würde ich definieren die Namen/Arten von Bibliotheken als Konstante statische und setzen alle von Ihnen in einer anderen Konstante, die ein array.
So etwas wie dies in meinem Daten-Klasse
const static var TYPE_COMPONENTS:String = "Komponenten";
const static var TYPE_INTERFACE:String = "interface";
const static var-TYPEN:Array = [TYPE_COMPONENTS,TYPE_INTERFACE];
sobald ich die confg xml geladen, und kann über die Kind-Knoten eins nach dem anderen und sehen, ob Sie übereinstimmen alle Elemente, die unter my-TYPEN-array. Ich habe alle Spiele in einer Gruppe loader (http://as3.casalib.org/docs/org_casalib_load_GroupLoad.html) ich habe auch alle Ressourcen, die in ein Wörterbuch array, so dass ich können Vermögenswerte, die durch die statische vars' ich definiert (Daten.TYPE_INTERFACE)
Dann ich warten Sie, bis das laden fertig zu stellen.
Einmal geht es um das laden der Vermögenswerte, verwende ich getLoader(Daten.TYPE_INTERFACE).getDefinition (
myClassName
) erstellen Sie die Klassehilft es, sich hasDefinition um zu überprüfen, ob die Klasse exsits ohne auslösen eines Fehlers
Müssen Sie wissen, was der name der Klasse ist es zu nennen, ich eine andere XML Datei, die definiert, welche Klassen zu suchen, und wie Sie zu behandeln.
Erzeuge ich die XML-Dateien von hand und manchmal brauchen, um mich daran zu erinnern, was die Optionen sind, aber es wäre möglich, erstellen Sie eine AIR-app, generieren könnten diese Dateien. Denn ich bin mit einer swf-Datei als ein Motor, der auf einem pc ausgeführt wird, gibt es keine Möglichkeit, herauszufinden, was mit den Bibliotheken vorhanden sind, die in einem untergeordneten Ordner, als könnte man Sie mit Server-side-Technologien oder in der LUFT, also die XML ist eine Notwendigkeit.
Hoffe, das hilft
welche IDE benutzt du?
Ich bin mit Flash CS5 und Flash Entwickeln (3.3.2). Aber diejenigen, die Szene wird nur von Flash (CS5, wahrscheinlich). Meine größte Sorge ist, über die Vereinfachung und schützen den Motor vor unfähig, die Hände.
Nach Tagen versucht, es herauszufinden, machte ich die getDefinition, um richtig zu arbeiten! Danke...
Ich bin verwirrt. Ist es möglich zu erklären, dies ein wenig weiter, vielleicht für jemanden, der mehr für einen Anfänger? Danke.
InformationsquelleAutor Daniel