Naslaggids voor Adobe ActionScript® 3.0 voor het Adobe® Flash®-platform
Startpagina  |  Lijst met pakketten en klassen verbergen |  Pakketten  |  Klassen  |  Nieuw  |  Index  |  Bijlagen  |  Waarom in het Engels?
Filters: AIR 30.0 en eerder, Flash Player 30.0 en eerder, Flash Lite 4
Flex 4.6 en eerder, Flash Pro CS6 en eerder
Filters verbergen
flash.net 

SharedObject  - AS3

Pakkettenx

Hoofdniveau
adobe.utils
air.desktop
air.net
air.update
air.update.events
coldfusion.air
coldfusion.air.errors
coldfusion.air.events
coldfusion.service
coldfusion.service.events
coldfusion.service.mxml
com.adobe.acm.solutions.authoring.domain.extensions
com.adobe.acm.solutions.ccr.domain.extensions
com.adobe.consulting.pst.vo
com.adobe.dct.component
com.adobe.dct.component.datadictionary
com.adobe.dct.component.datadictionaryElement
com.adobe.dct.component.dataElementsPanel
com.adobe.dct.component.toolbars
com.adobe.dct.event
com.adobe.dct.exp
com.adobe.dct.model
com.adobe.dct.service
com.adobe.dct.service.provider
com.adobe.dct.transfer
com.adobe.dct.util
com.adobe.dct.view
com.adobe.ep.taskmanagement.domain
com.adobe.ep.taskmanagement.event
com.adobe.ep.taskmanagement.filter
com.adobe.ep.taskmanagement.services
com.adobe.ep.taskmanagement.util
com.adobe.ep.ux.attachmentlist.component
com.adobe.ep.ux.attachmentlist.domain
com.adobe.ep.ux.attachmentlist.domain.events
com.adobe.ep.ux.attachmentlist.domain.renderers
com.adobe.ep.ux.attachmentlist.skin
com.adobe.ep.ux.attachmentlist.skin.renderers
com.adobe.ep.ux.content.event
com.adobe.ep.ux.content.factory
com.adobe.ep.ux.content.handlers
com.adobe.ep.ux.content.managers
com.adobe.ep.ux.content.model.asset
com.adobe.ep.ux.content.model.preview
com.adobe.ep.ux.content.model.relation
com.adobe.ep.ux.content.model.search
com.adobe.ep.ux.content.model.toolbar
com.adobe.ep.ux.content.search
com.adobe.ep.ux.content.services
com.adobe.ep.ux.content.services.load
com.adobe.ep.ux.content.services.permissions
com.adobe.ep.ux.content.services.preview
com.adobe.ep.ux.content.services.providers
com.adobe.ep.ux.content.services.query
com.adobe.ep.ux.content.services.relationships
com.adobe.ep.ux.content.services.search.lccontent
com.adobe.ep.ux.content.services.version
com.adobe.ep.ux.content.view
com.adobe.ep.ux.content.view.components.activate
com.adobe.ep.ux.content.view.components.grid
com.adobe.ep.ux.content.view.components.grid.hover
com.adobe.ep.ux.content.view.components.grid.hover.component
com.adobe.ep.ux.content.view.components.grid.renderers
com.adobe.ep.ux.content.view.components.relationships
com.adobe.ep.ux.content.view.components.review
com.adobe.ep.ux.content.view.components.search.renderers
com.adobe.ep.ux.content.view.components.searchpod
com.adobe.ep.ux.content.view.components.toolbar
com.adobe.ep.ux.content.view.components.toolbar.controlRenderers
com.adobe.ep.ux.content.view.components.version
com.adobe.ep.ux.documentsubmit.component
com.adobe.ep.ux.documentsubmit.domain
com.adobe.ep.ux.documentsubmit.skin
com.adobe.ep.ux.taskaction.component
com.adobe.ep.ux.taskaction.domain
com.adobe.ep.ux.taskaction.domain.events
com.adobe.ep.ux.taskaction.skin
com.adobe.ep.ux.taskdetails.component
com.adobe.ep.ux.taskdetails.domain
com.adobe.ep.ux.taskdetails.skin
com.adobe.ep.ux.tasklist.component
com.adobe.ep.ux.tasklist.domain
com.adobe.ep.ux.tasklist.skin
com.adobe.ep.ux.webdocumentviewer.domain
com.adobe.exm.expression
com.adobe.exm.expression.error
com.adobe.exm.expression.event
com.adobe.exm.expression.impl
com.adobe.fiber.runtime.lib
com.adobe.fiber.services
com.adobe.fiber.services.wrapper
com.adobe.fiber.styles
com.adobe.fiber.util
com.adobe.fiber.valueobjects
com.adobe.gravity.binding
com.adobe.gravity.context
com.adobe.gravity.flex.bundleloader
com.adobe.gravity.flex.progress
com.adobe.gravity.flex.serviceloader
com.adobe.gravity.framework
com.adobe.gravity.init
com.adobe.gravity.service.bundleloader
com.adobe.gravity.service.logging
com.adobe.gravity.service.manifest
com.adobe.gravity.service.progress
com.adobe.gravity.tracker
com.adobe.gravity.ui
com.adobe.gravity.utility
com.adobe.gravity.utility.async
com.adobe.gravity.utility.error
com.adobe.gravity.utility.events
com.adobe.gravity.utility.factory
com.adobe.gravity.utility.flex.async
com.adobe.gravity.utility.logging
com.adobe.gravity.utility.message
com.adobe.gravity.utility.sequence
com.adobe.gravity.utility.url
com.adobe.guides.control
com.adobe.guides.domain
com.adobe.guides.i18n
com.adobe.guides.spark.components.skins
com.adobe.guides.spark.components.skins.mx
com.adobe.guides.spark.headers.components
com.adobe.guides.spark.headers.skins
com.adobe.guides.spark.layouts.components
com.adobe.guides.spark.layouts.skins
com.adobe.guides.spark.navigators.components
com.adobe.guides.spark.navigators.renderers
com.adobe.guides.spark.navigators.skins
com.adobe.guides.spark.util
com.adobe.guides.spark.wrappers.components
com.adobe.guides.spark.wrappers.skins
com.adobe.guides.submit
com.adobe.icc.dc.domain
com.adobe.icc.dc.domain.factory
com.adobe.icc.editors.events
com.adobe.icc.editors.handlers
com.adobe.icc.editors.managers
com.adobe.icc.editors.model
com.adobe.icc.editors.model.config
com.adobe.icc.editors.model.el
com.adobe.icc.editors.model.el.operands
com.adobe.icc.editors.model.el.operators
com.adobe.icc.enum
com.adobe.icc.external.dc
com.adobe.icc.obj
com.adobe.icc.services
com.adobe.icc.services.category
com.adobe.icc.services.config
com.adobe.icc.services.download
com.adobe.icc.services.export
com.adobe.icc.services.external
com.adobe.icc.services.formbridge
com.adobe.icc.services.fragmentlayout
com.adobe.icc.services.layout
com.adobe.icc.services.letter
com.adobe.icc.services.locator
com.adobe.icc.services.module
com.adobe.icc.services.render
com.adobe.icc.services.submit
com.adobe.icc.services.user
com.adobe.icc.token
com.adobe.icc.vo
com.adobe.icc.vo.render
com.adobe.icomm.assetplacement.controller
com.adobe.icomm.assetplacement.controller.utils
com.adobe.icomm.assetplacement.data
com.adobe.icomm.assetplacement.model
com.adobe.livecycle.assetmanager.client
com.adobe.livecycle.assetmanager.client.event
com.adobe.livecycle.assetmanager.client.handler
com.adobe.livecycle.assetmanager.client.managers
com.adobe.livecycle.assetmanager.client.model
com.adobe.livecycle.assetmanager.client.model.cms
com.adobe.livecycle.assetmanager.client.service
com.adobe.livecycle.assetmanager.client.service.search
com.adobe.livecycle.assetmanager.client.service.search.cms
com.adobe.livecycle.assetmanager.client.utils
com.adobe.livecycle.content
com.adobe.livecycle.rca.model
com.adobe.livecycle.rca.model.constant
com.adobe.livecycle.rca.model.document
com.adobe.livecycle.rca.model.participant
com.adobe.livecycle.rca.model.reminder
com.adobe.livecycle.rca.model.stage
com.adobe.livecycle.rca.service
com.adobe.livecycle.rca.service.core
com.adobe.livecycle.rca.service.core.delegate
com.adobe.livecycle.rca.service.process
com.adobe.livecycle.rca.service.process.delegate
com.adobe.livecycle.rca.token
com.adobe.livecycle.ria.security.api
com.adobe.livecycle.ria.security.service
com.adobe.mosaic.layouts
com.adobe.mosaic.layouts.dragAndDrop
com.adobe.mosaic.layouts.interfaces
com.adobe.mosaic.mxml
com.adobe.mosaic.om.constants
com.adobe.mosaic.om.events
com.adobe.mosaic.om.impl
com.adobe.mosaic.om.interfaces
com.adobe.mosaic.skinning
com.adobe.mosaic.sparklib.editors
com.adobe.mosaic.sparklib.optionMenu
com.adobe.mosaic.sparklib.scrollableMenu
com.adobe.mosaic.sparklib.scrollableMenu.skins
com.adobe.mosaic.sparklib.tabLayout
com.adobe.mosaic.sparklib.tabLayout.events
com.adobe.mosaic.sparklib.tabLayout.layouts
com.adobe.mosaic.sparklib.tabLayout.skins
com.adobe.mosaic.sparklib.text
com.adobe.mosaic.sparklib.util
com.adobe.solutions.acm.authoring.presentation
com.adobe.solutions.acm.authoring.presentation.actionbar
com.adobe.solutions.acm.authoring.presentation.common
com.adobe.solutions.acm.authoring.presentation.events
com.adobe.solutions.acm.authoring.presentation.fragment
com.adobe.solutions.acm.authoring.presentation.letter
com.adobe.solutions.acm.authoring.presentation.letter.data
com.adobe.solutions.acm.authoring.presentation.preview
com.adobe.solutions.acm.authoring.presentation.rte
com.adobe.solutions.acm.ccr.presentation
com.adobe.solutions.acm.ccr.presentation.contentcapture
com.adobe.solutions.acm.ccr.presentation.contentcapture.events
com.adobe.solutions.acm.ccr.presentation.contentcapture.preview
com.adobe.solutions.acm.ccr.presentation.datacapture
com.adobe.solutions.acm.ccr.presentation.datacapture.renderers
com.adobe.solutions.acm.ccr.presentation.pdf
com.adobe.solutions.exm
com.adobe.solutions.exm.authoring
com.adobe.solutions.exm.authoring.components.controls
com.adobe.solutions.exm.authoring.components.toolbars
com.adobe.solutions.exm.authoring.domain
com.adobe.solutions.exm.authoring.domain.expression
com.adobe.solutions.exm.authoring.domain.impl
com.adobe.solutions.exm.authoring.domain.method
com.adobe.solutions.exm.authoring.domain.variable
com.adobe.solutions.exm.authoring.enum
com.adobe.solutions.exm.authoring.events
com.adobe.solutions.exm.authoring.model
com.adobe.solutions.exm.authoring.renderer
com.adobe.solutions.exm.authoring.view
com.adobe.solutions.exm.expression
com.adobe.solutions.exm.impl
com.adobe.solutions.exm.impl.method
com.adobe.solutions.exm.method
com.adobe.solutions.exm.mock
com.adobe.solutions.exm.mock.method
com.adobe.solutions.exm.runtime
com.adobe.solutions.exm.runtime.impl
com.adobe.solutions.exm.variable
com.adobe.solutions.prm.constant
com.adobe.solutions.prm.domain
com.adobe.solutions.prm.domain.factory
com.adobe.solutions.prm.domain.impl
com.adobe.solutions.prm.domain.manager
com.adobe.solutions.prm.presentation.asset
com.adobe.solutions.prm.presentation.constant
com.adobe.solutions.prm.presentation.document
com.adobe.solutions.prm.presentation.event
com.adobe.solutions.prm.presentation.file
com.adobe.solutions.prm.presentation.project
com.adobe.solutions.prm.presentation.team
com.adobe.solutions.prm.presentation.util
com.adobe.solutions.prm.service
com.adobe.solutions.prm.services.impl
com.adobe.solutions.prm.vo
com.adobe.solutions.rca.constant
com.adobe.solutions.rca.domain
com.adobe.solutions.rca.domain.common
com.adobe.solutions.rca.domain.factory
com.adobe.solutions.rca.domain.impl
com.adobe.solutions.rca.domain.impl.manager
com.adobe.solutions.rca.domain.manager
com.adobe.solutions.rca.presentation
com.adobe.solutions.rca.presentation.comment
com.adobe.solutions.rca.presentation.constant
com.adobe.solutions.rca.presentation.event
com.adobe.solutions.rca.presentation.gantt
com.adobe.solutions.rca.presentation.gantt.ruler
com.adobe.solutions.rca.presentation.template
com.adobe.solutions.rca.presentation.template.audit
com.adobe.solutions.rca.presentation.template.definition
com.adobe.solutions.rca.presentation.template.documents
com.adobe.solutions.rca.presentation.template.stages
com.adobe.solutions.rca.presentation.util
com.adobe.solutions.rca.service
com.adobe.solutions.rca.services.impl
com.adobe.solutions.rca.vo
com.adobe.solutions.rca.vo.um
com.adobe.viewsource
fl.accessibility
fl.containers
fl.controls
fl.controls.dataGridClasses
fl.controls.listClasses
fl.controls.progressBarClasses
fl.core
fl.data
fl.display
fl.events
fl.ik
fl.lang
fl.livepreview
fl.managers
fl.motion
fl.motion.easing
fl.rsl
fl.text
fl.transitions
fl.transitions.easing
fl.video
flash.accessibility
flash.concurrent
flash.crypto
flash.data
flash.desktop
flash.display
flash.display3D
flash.display3D.textures
flash.errors
flash.events
flash.external
flash.filesystem
flash.filters
flash.geom
flash.globalization
flash.html
flash.media
flash.net
flash.net.dns
flash.net.drm
flash.notifications
flash.permissions
flash.printing
flash.profiler
flash.sampler
flash.security
flash.sensors
flash.system
flash.text
flash.text.engine
flash.text.ime
flash.ui
flash.utils
flash.xml
flashx.textLayout
flashx.textLayout.compose
flashx.textLayout.container
flashx.textLayout.conversion
flashx.textLayout.edit
flashx.textLayout.elements
flashx.textLayout.events
flashx.textLayout.factory
flashx.textLayout.formats
flashx.textLayout.operations
flashx.textLayout.utils
flashx.undo
ga.controls
ga.layouts
ga.model
ga.uiComponents
ga.util
ga.views
ga.wrappers
lc.foundation
lc.foundation.domain
lc.foundation.events
lc.foundation.ui
lc.foundation.util
lc.preloader
lc.procmgmt
lc.procmgmt.commands
lc.procmgmt.domain
lc.procmgmt.events
lc.procmgmt.formbridge
lc.procmgmt.impl
lc.procmgmt.ui.attachments
lc.procmgmt.ui.controls
lc.procmgmt.ui.controls.card
lc.procmgmt.ui.controls.renderer
lc.procmgmt.ui.help
lc.procmgmt.ui.layout
lc.procmgmt.ui.presentationmodel
lc.procmgmt.ui.process
lc.procmgmt.ui.search
lc.procmgmt.ui.startpoint
lc.procmgmt.ui.task
lc.procmgmt.ui.task.form
lc.procmgmt.ui.task.form.commands
lc.procmgmt.ui.tracking
mx.accessibility
mx.automation
mx.automation.air
mx.automation.delegates
mx.automation.delegates.advancedDataGrid
mx.automation.delegates.charts
mx.automation.delegates.containers
mx.automation.delegates.controls
mx.automation.delegates.controls.dataGridClasses
mx.automation.delegates.controls.fileSystemClasses
mx.automation.delegates.core
mx.automation.delegates.flashflexkit
mx.automation.events
mx.binding
mx.binding.utils
mx.charts
mx.charts.chartClasses
mx.charts.effects
mx.charts.effects.effectClasses
mx.charts.events
mx.charts.renderers
mx.charts.series
mx.charts.series.items
mx.charts.series.renderData
mx.charts.styles
mx.collections
mx.collections.errors
mx.containers
mx.containers.accordionClasses
mx.containers.dividedBoxClasses
mx.containers.errors
mx.containers.utilityClasses
mx.controls
mx.controls.advancedDataGridClasses
mx.controls.dataGridClasses
mx.controls.listClasses
mx.controls.menuClasses
mx.controls.olapDataGridClasses
mx.controls.scrollClasses
mx.controls.sliderClasses
mx.controls.textClasses
mx.controls.treeClasses
mx.controls.videoClasses
mx.core
mx.core.windowClasses
mx.data
mx.data.crypto
mx.data.errors
mx.data.events
mx.data.messages
mx.data.mxml
mx.data.offline.errors
mx.data.utils
mx.effects
mx.effects.easing
mx.effects.effectClasses
mx.events
mx.filters
mx.flash
mx.formatters
mx.geom
mx.graphics
mx.graphics.codec
mx.graphics.shaderClasses
mx.logging
mx.logging.errors
mx.logging.targets
mx.managers
mx.messaging
mx.messaging.channels
mx.messaging.config
mx.messaging.errors
mx.messaging.events
mx.messaging.management
mx.messaging.messages
mx.modules
mx.netmon
mx.olap
mx.olap.aggregators
mx.preloaders
mx.printing
mx.resources
mx.rpc
mx.rpc.events
mx.rpc.http
mx.rpc.http.mxml
mx.rpc.livecycle
mx.rpc.mxml
mx.rpc.remoting
mx.rpc.remoting.mxml
mx.rpc.soap
mx.rpc.soap.mxml
mx.rpc.wsdl
mx.rpc.xml
mx.skins
mx.skins.halo
mx.skins.spark
mx.skins.wireframe
mx.skins.wireframe.windowChrome
mx.states
mx.styles
mx.utils
mx.validators
org.osmf.containers
org.osmf.display
org.osmf.elements
org.osmf.events
org.osmf.layout
org.osmf.logging
org.osmf.media
org.osmf.metadata
org.osmf.net
org.osmf.net.dvr
org.osmf.net.httpstreaming
org.osmf.net.metrics
org.osmf.net.qos
org.osmf.net.rtmpstreaming
org.osmf.net.rules
org.osmf.traits
org.osmf.utils
spark.accessibility
spark.automation.delegates
spark.automation.delegates.components
spark.automation.delegates.components.gridClasses
spark.automation.delegates.components.mediaClasses
spark.automation.delegates.components.supportClasses
spark.automation.delegates.skins.spark
spark.automation.events
spark.collections
spark.components
spark.components.calendarClasses
spark.components.gridClasses
spark.components.mediaClasses
spark.components.supportClasses
spark.components.windowClasses
spark.core
spark.effects
spark.effects.animation
spark.effects.easing
spark.effects.interpolation
spark.effects.supportClasses
spark.events
spark.filters
spark.formatters
spark.formatters.supportClasses
spark.globalization
spark.globalization.supportClasses
spark.layouts
spark.layouts.supportClasses
spark.managers
spark.modules
spark.preloaders
spark.primitives
spark.primitives.supportClasses
spark.skins
spark.skins.mobile
spark.skins.mobile.supportClasses
spark.skins.spark
spark.skins.spark.mediaClasses.fullScreen
spark.skins.spark.mediaClasses.normal
spark.skins.spark.windowChrome
spark.skins.wireframe
spark.skins.wireframe.mediaClasses
spark.skins.wireframe.mediaClasses.fullScreen
spark.transitions
spark.utils
spark.validators
spark.validators.supportClasses
xd.core.axm.enterprise.view.components
xd.core.axm.enterprise.view.skins
xd.core.axm.view.components
xd.core.axm.view.components.support

Taalelementen

Algemene constanten
Algemene functies
Operatoren
Programmeerinstructies, gereserveerde woorden en compileraanwijzingen
Speciale typen

Bijlagen

Nieuw
Compilerfouten
Compilerwaarschuwingen
Uitvoeringsfouten
Migreren naar ActionScript 3
Ondersteunde tekensets
Alleen MXML-labels
Elementen van bewegings-XML
Timed Text-tags
Lijst van vervangen elementen
Constanten voor toegankelijkheidsimplementatie
ActionScript-voorbeelden gebruiken
Juridische kennisgeving
Pakketflash.net
Klassepublic class SharedObject
OverervingSharedObject Inheritance EventDispatcher Inheritance Object

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

De klasse SharedObject wordt gebruikt om beperkte hoeveelheden gegevens op de computer van een gebruiker of op een server te lezen en op te slaan. Met gezamenlijke objecten kunnen gegevens realtime worden gedeeld tussen SWF-bestanden op meerdere clients en objecten die blijvend zijn op de lokale computer of de externe server. Lokale, gezamenlijke objecten zijn vergelijkbaar met browsercookies en externe, gezamenlijke objecten zijn vergelijkbaar met apparaten voor gegevensoverdracht in realtime. Wanneer u externe, gezamenlijke objecten wilt gebruiken, hebt u Adobe Flash Media Server nodig.

Gebruik gezamenlijke objecten voor de volgende bewerkingen:

  • Lokaal blijvend maken. Dit is de eenvoudigste toepassing van een gezamenlijk object en hiervoor is Flash Media Server niet nodig. U kunt bijvoorbeeld SharedObject.getLocal() aanroepen om een gezamenlijk object te maken in een Flash Player-toepassing, zoals een rekenmachine met geheugen. Wanneer de gebruiker de rekenmachine sluit, wordt de laatste waarde in een gezamenlijk object opgeslagen op de computer van de gebruiker. De volgende keer dat de rekenmachine wordt uitgevoerd, bevat deze de laatstgebruikte waarden. U kunt ook de eigenschappen van een gezamenlijk object instellen op null voordat de rekenmachinetoepassing wordt gesloten. In dat geval wordt de rekenmachine de volgende keer dat deze wordt uitgevoerd, geopend zonder waarden. Een ander voorbeeld van lokaal blijvend maken is het bijhouden van gebruikersvoorkeuren of andere gegevens voor een complexe website, zoals een record met informatie over de artikelen die een gebruiker heeft gelezen op een nieuwssite. Wanneer u deze gegevens bijhoudt, kunt u artikelen die al zijn gelezen anders weergeven dan nieuwe, ongelezen artikelen. De server wordt minder belast wanneer deze informatie wordt opgeslagen op de computer van de gebruiker.
  • Gegevens opslaan op en delen via Flash Media Server. Een gezamenlijk object kan gegevens op de server opslaan zodat andere clients die kunnen ophalen. U kunt bijvoorbeeld SharedObject.getRemote() aanroepen om een extern, gezamenlijk object te maken, zoals een telefoonlijst, die blijvend op de server staat. Wanneer een client wijzigingen doorvoert in het gezamenlijke object, zijn de gewijzigde gegevens beschikbaar voor alle clients die momenteel met het object zijn verbonden of die er later verbinding mee maken. Wanneer een object alleen lokaal blijvend is en een client gegevens wijzigt terwijl er geen verbinding is met de server, worden de gegevens naar het externe, gezamenlijke object gekopieerd wanneer de client de volgende keer verbinding maakt met het object.
  • Realtime gegevens delen. Een gezamenlijk object kan realtime gegevens delen met meerdere clients. U kunt bijvoorbeeld een extern, gezamenlijk object openen dat een lijst opslaat van gebruikers die met een chatroom zijn verbonden. Deze lijst is zichtbaar voor alle clients die met het object zijn verbonden. Wanneer een gebruiker de chatroom betreedt of verlaat, wordt het object bijgewerkt en kunnen alle clients die met het object zijn verbonden de gewijzigde lijst van chatroomgebruikers zien.

Als u een lokaal, gezamenlijk object wilt maken, roept u SharedObject.getLocal() aan. Als u een extern, gezamenlijk object wilt maken, roept u SharedObject.getRemote() aan.

Wanneer een toepassing wordt gesloten, worden gezamenlijke objecten leeggemaakt of naar een schijf geschreven. U kunt ook de methode flush() aanroepen om gegevens expliciet naar een schijf te schrijven.

Overwegingen voor lokale schijfruimte. Lokale, gezamenlijke objecten hebben bepaalde beperkingen waarmee u rekening moet houden bij het ontwerpen van een toepassing. Wellicht mogen SWF-bestanden soms geen lokale, gezamenlijke objecten schrijven en soms kunnen de opgeslagen gegevens in lokale, gezamenlijke objecten zonder uw medeweten worden verwijderd. Gebruikers van Flash Player kunnen de schijfruimte beheren die beschikbaar is voor afzonderlijke domeinen of alle domeinen. Wanneer gebruikers de beschikbare hoeveelheid schijfruimte verlagen, kunnen sommige lokale, gezamenlijke objecten worden verwijderd. Gebruikers van Flash Player kunnen tevens privacyopties gebruiken om te voorkomen dat domeinen van derden (andere domeinen dan het domein in de huidige adresbalk van de browser) lokale, gezamenlijke objecten schrijven of lezen. Bovendien geldt bij Mac OS (vanaf AIR 3.3) dat de locatie voor lokaal gedeelde objecten is gewijzigd. Als u dus een upgrade uitvoert naar de 3.3-naamruimte, lijkt het alsof deze objecten verloren zijn geraakt.

Opmerking: SWF-bestanden die niet op een externe server maar op een lokale computer zijn opgeslagen en worden uitgevoerd, kunnen altijd gezamenlijke objecten van derden naar schijf schrijven. Raadpleeg het deelvenster Global Storage Settings in Flash Player Help voor meer informatie over gezamenlijke objecten van derden.

Adobe raadt u aan te controleren op fouten die verband houden met de hoeveelheid schijfruimte en met privacyopties van gebruikers. Voer deze controles uit wanneer u getLocal() en flush() aanroept:

  • SharedObject.getLocal() – Flash Player genereert een uitzondering wanneer een aanroep van deze methode mislukt, bijvoorbeeld wanneer de gebruiker gezamenlijke objecten van derden heeft uitgeschakeld en het domein van uw SWF-bestand niet overeenkomt met het domein in de adresbalk van de browser.
  • SharedObject.flush() — Flash Player genereert een uitzondering wanneer een aanroep van deze methode mislukt. SharedObjectFlushStatus.FLUSHED wordt geretourneerd wanneer de aanroep is gelukt. SharedObjectFlushStatus.PENDING wordt geretourneerd wanneer meer opslagruimte nodig is. De gebruiker wordt gevraagd meer opslagruimte voor lokaal opgeslagen informatie toe te staan. Vervolgens wordt de gebeurtenis netStatus verzonden met een informatieobject dat aangeeft of het leegmaken is gelukt of niet.

Wanneer uw SWF-bestand lokale, gezamenlijke objecten probeert te maken of te wijzigen, moet u ervoor zorgen dat uw SWF-bestand ten minste 215 pixels breed en 138 pixels hoog is (de minimale afmetingen voor het weergeven van het dialoogvenster waarin de gebruiker wordt gevraagd de opslaglimiet voor lokale, gezamenlijke objecten te verhogen). Wanneer uw SWF-bestand kleiner is en de opslaglimiet moet worden verhoogd, mislukt SharedObject.flush(), wordt SharedObjectFlushedStatus.PENDING geretourneerd en wordt de gebeurtenis netStatus verzonden.

Externe, gezamenlijke objecten. Met Flash Media Server kunt u externe, gezamenlijke objecten maken en gebruiken die realtime worden gedeeld door alle clients die met uw toepassing zijn verbonden. Wanneer een client een eigenschap van een extern, gezamenlijk object wijzigt, wordt de eigenschap voor alle verbonden clients gewijzigd. U kunt externe, gezamenlijke objecten gebruiken om clients te synchroniseren, bijvoorbeeld gebruikers in een game waaraan meerdere spelers meedoen.

Elk extern, gezamenlijk object heeft een eigenschap data, een object met eigenschappen die gegevens opslaan. Roep setProperty() aan om een eigenschap van het object data te wijzigen. De server werkt de eigenschappen bij, verzendt een gebeurtenis sync en stuurt de eigenschappen terug naar de verbonden clients.

U kunt ervoor kiezen externe, gezamenlijke objecten blijvend te maken op de client, de server of beide. Standaard slaat Flash Player externe, gezamenlijke objecten lokaal blijvend op tot een maximum van 100 kB. Wanneer u een groter object wilt opslaan, wordt in Flash Player het dialoogvenster met lokale opslaginstellingen weergegeven. Daarin kan de gebruiker lokale opslag van het gezamenlijke object toestaan of weigeren. Zorg ervoor dat de grootte van het werkgebied tenminste 215 x 138 pixels is, dit is de minimale grootte die Flash nodig heeft om het dialoogvenster weer te geven.

Wanneer de gebruiker opslag toestaat, slaat de server het gezamenlijke object op en verzendt een gebeurtenis netStatus met de code-eigenschap SharedObject.Flush.Success. Wanneer de gebruiker opslag weigert, slaat de server het gezamenlijke object niet op en verzendt een gebeurtenis netStatus met de code-eigenschap SharedObject.Flush.Failed.

Bekijk de voorbeelden

Verwante API-elementen



Openbare eigenschappen
 EigenschapGedefinieerd door
  client : Object
Geeft het object aan waarop callback-methoden worden aangeroepen.
SharedObject
 Inheritedconstructor : Object
Verwijzing naar het klasseobject of de constructorfunctie van een bepaalde objectinstantie.
Object
  data : Object
[alleen-lezen] De verzameling kenmerken die aan de eigenschap data van het object is toegewezen; deze kenmerken kunnen worden gedeeld en opgeslagen.
SharedObject
  defaultObjectEncoding : uint
[statisch] De standaardobjectcodering (AMF-versie) voor alle lokale, gezamenlijke objecten die in het SWF-bestand zijn gemaakt.
SharedObject
  fps : Number
[alleen-schrijven] Geeft het aantal keren per seconde aan dat clientwijzigingen van een gezamenlijk object naar de server worden verzonden.
SharedObject
  objectEncoding : uint
De objectcodering (AMF-versie) voor dit gezamenlijke object.
SharedObject
      preventBackup : Boolean
[statisch] Geeft aan of al dan niet een back-up wordt gemaakt van lokaal gedeelde objecten op de back-upservice van de iOS-cloud.
SharedObject
  size : uint
[alleen-lezen] De huidige grootte van het gezamenlijke object, in bytes.
SharedObject
Openbare methoden
 MethodeGedefinieerd door
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registreert een gebeurtenislistenerobject bij een object EventDispatcher, zodat de listener een melding van een gebeurtenis ontvangt.
EventDispatcher
  
Schoont alle gegevens van lokale, gezamenlijke objecten op en verwijdert het gezamenlijke object van de schijf.
SharedObject
  
Sluit de verbinding tussen een extern, gezamenlijk object en de server.
SharedObject
  
connect(myConnection:NetConnection, params:String = null):void
Maakt met een extern, gezamenlijk object op een server verbinding via een opgegeven object NetConnection.
SharedObject
 Inherited
Verzendt een gebeurtenis naar de gebeurtenisstroom.
EventDispatcher
  
flush(minDiskSpace:int = 0):String
Schrijft een lokaal blijvend gezamenlijk object direct naar een lokaal bestand.
SharedObject
  
getLocal(name:String, localPath:String = null, secure:Boolean = false):SharedObject
[statisch] Retourneert een verwijzing naar een lokaal blijvend gezamenlijk object dat alleen voor de huidige client beschikbaar is.
SharedObject
  
getRemote(name:String, remotePath:String = null, persistence:Object = false, secure:Boolean = false):SharedObject
[statisch] Retourneert een verwijzing naar een gezamenlijk object op Flash Media Server dat door meerdere clients kan worden benaderd.
SharedObject
 Inherited
Controleert of het object EventDispatcher listeners heeft geregistreerd voor een specifiek type gebeurtenis.
EventDispatcher
 Inherited
Geeft aan of voor een object een opgegeven eigenschap is gedefinieerd.
Object
 Inherited
Geeft aan of een instantie van de klasse Object zich in de prototypeketen van het object bevindt dat als parameter is opgegeven.
Object
 Inherited
Geeft aan of de opgegeven eigenschap bestaat en kan worden opgesomd.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Verwijdert een listener uit het object EventDispatcher.
EventDispatcher
  
send(... arguments):void
Verzendt een bericht naar alle clients die met een extern, gezamenlijk object zijn verbonden en naar de client die het bericht heeft verzonden.
SharedObject
  
setDirty(propertyName:String):void
Geeft aan de server door dat de waarde van een eigenschap in het gezamenlijke object is gewijzigd.
SharedObject
  
setProperty(propertyName:String, value:Object = null):void
Werkt de waarde van een eigenschap in een gezamenlijk object bij en geeft aan de server door dat de waarde van de eigenschap is gewijzigd.
SharedObject
 Inherited
Stelt de beschikbaarheid van een dynamische eigenschap voor lusbewerkingen in.
Object
 Inherited
Geeft de tekenreeksweergave van dit object weer, geformatteerd volgens de locatiespecifieke conventies.
Object
 Inherited
Retourneert een tekenreeksrepresentatie van het opgegeven object.
Object
 Inherited
Retourneert de primitieve waarde van het opgegeven object.
Object
 Inherited
Controleert of een gebeurtenislistener is geregistreerd bij dit object EventDispatcher of een van de voorouders voor het opgegeven type gebeurtenis.
EventDispatcher
Gebeurtenissen
 Gebeurtenis Overzicht Gedefinieerd door
 Inherited[uitgezonden gebeurtenis] Wordt verzonden wanneer Flash Player of de AIR-toepassing de besturingssysteemfocus krijgt en actief wordt.EventDispatcher
  Wordt verzonden wanneer een uitzondering asynchroon — wordt gegenereerd, dat wil zeggen, vanuit native asynchrone code.SharedObject
 Inherited[uitgezonden gebeurtenis] Wordt verzonden wanneer Flash Player of de AIR-toepassing de systeemfocus verliest en inactief wordt.EventDispatcher
  Wordt verzonden wanneer een instantie SharedObject de status of fout meldt.SharedObject
  Wordt verzonden wanneer een extern, gezamenlijk object door de server is bijgewerkt.SharedObject
Eigenschapdetails

client

eigenschap
client:Object

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Geeft het object aan waarop callback-methoden worden aangeroepen. Het standaardobject is this. U kunt de eigenschap client instellen op een ander object, waardoor callback-methoden worden aangeroepen met dat andere object.



Implementatie
    public function get client():Object
    public function set client(value:Object):void

Gegenereerde uitzondering
TypeError — De eigenschap client moet zijn ingesteld op een object dat niet null is.

data

eigenschap 
data:Object  [alleen-lezen]

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

De verzameling kenmerken die aan de eigenschap data van het object is toegewezen; deze kenmerken kunnen worden gedeeld en opgeslagen. Elk kenmerk kan een object zijn van elk type in ActionScript of JavaScript (Array, Number, Boolean, ByteArray, XML, enzovoort). Met de volgende regels worden bijvoorbeeld waarden aan verschillende aspecten van een gezamenlijk object toegewezen:

     var items_array:Array = new Array(101, 346, 483);
     var currentUserIsAdmin:Boolean = true;
     var currentUserName:String = "Ramona";
     
     var my_so:SharedObject = SharedObject.getLocal("superfoo");
     my_so.data.itemNumbers = items_array;
     my_so.data.adminPrivileges = currentUserIsAdmin;
     my_so.data.userName = currentUserName;
     
     for (var prop in my_so.data) {
       trace(prop+": "+my_so.data[prop]);
     }
     

Alle kenmerken van de eigenschap data van een gezamenlijk object worden opgeslagen wanneer het object blijvend is. Het gezamenlijke object bevat de volgende informatie:

     userName: Ramona
     adminPrivileges: true
     itemNumbers: 101,346,483
     

Opmerking: wijs waarden niet direct toe aan de eigenschap data van een gezamenlijk object, zoals in so.data = someValue. Deze toewijzingen worden genegeerd in Flash.

Gebruik code als delete so.data.attributeName om kenmerken te verwijderen van lokale, gezamenlijke objecten. Wanneer u een kenmerk voor een lokaal, gezamenlijk object instelt op null of undefined, wordt het kenmerk niet verwijderd.

Wanneer u waarden van het type private voor een gezamenlijk object wilt maken (waarden die alleen beschikbaar zijn voor de clientinstantie terwijl het object in gebruik is en die niet worden opgeslagen met het object wanneer deze wordt afgesloten), moet u eigenschappen maken die niet de opslagnaam data hebben, zoals wordt getoond in het volgende voorbeeld:

     var my_so:SharedObject = SharedObject.getLocal("superfoo");
     my_so.favoriteColor = "blue";
     my_so.favoriteNightClub = "The Bluenote Tavern";
     my_so.favoriteSong = "My World is Blue";
     
     for (var prop in my_so) {
       trace(prop+": "+my_so[prop]);
     }
     

Het gezamenlijke object bevat de volgende gegevens:

     favoriteSong: My World is Blue
     favoriteNightClub: The Bluenote Tavern
     favoriteColor: blue
     data: [object Object]
     

Voor externe, gezamenlijke objecten die met een server worden gebruikt, zijn alle kenmerken van de eigenschap data beschikbaar voor alle clients die met het gezamenlijke object zijn verbonden en alle kenmerken worden opgeslagen wanneer het object blijvend is. Wanneer een client de waarde van een kenmerk wijzigt, zien alle clients de nieuwe waarde.



Implementatie
    public function get data():Object

Verwante API-elementen

defaultObjectEncoding

eigenschap 
defaultObjectEncoding:uint

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

De standaardobjectcodering (AMF-versie) voor alle lokale, gezamenlijke objecten die in het SWF-bestand zijn gemaakt. Wanneer lokale, gezamenlijke objecten naar schijf worden geschreven, geeft de eigenschap SharedObject.defaultObjectEncoding aan welke versie van Action Message Format moet worden gebruikt: de indeling van ActionScript 3.0 (AMF3) of de indeling van ActionScript 1.0 of 2.0 (AMF0).

Zie de beschrijving van de eigenschap objectEncoding voor meer informatie over objectcodering, waaronder het verschil tussen codering in lokale en externe gezamenlijke objecten.

De standaardwaarde van SharedObject.defaultObjectEncoding is ingesteld op het gebruik van de indeling van ActionScript 3.0, AMF3. Wanneer u lokale, gezamenlijk objecten moet schrijven die leesbaar zijn voor SWF-bestanden waarin ActionScript 1.0 of 2.0 wordt gebruikt, stelt u SharedObject.defaultObjectEncoding in op het gebruik van de indeling van ActionScript 1.0 of ActionScript 2.0, flash.net.ObjectEncoding.AMF0. U doet dit aan het begin van het script, voordat u lokale, gezamenlijk objecten maakt. Alle lokale, gezamenlijke objecten die hierna worden gemaakt, gebruiken AMF0-codering en kunnen communiceren met oudere inhoud. U kunt de waarde objectEncoding van bestaande lokale, gezamenlijke objecten niet wijzigen door SharedObject.defaultObjectEncoding in te stellen nadat de lokale, gezamenlijke objecten zijn gemaakt.

Wanneer u de objectcodering voor elk object afzonderlijk wilt instellen, en niet voor alle gezamenlijke objecten die zijn gemaakt door het SWF-bestand, stelt u de eigenschap objectEncoding van het lokale, gezamenlijke object in.



Implementatie
    public static function get defaultObjectEncoding():uint
    public static function set defaultObjectEncoding(value:uint):void

Verwante API-elementen

fps

eigenschap 
fps:Number  [alleen-schrijven]

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Geeft het aantal keren per seconde aan dat clientwijzigingen van een gezamenlijk object naar de server worden verzonden.

Gebruik deze methode wanneer u de hoeveelheid verkeer tussen de client en de server wilt beheren. Wanneer bijvoorbeeld de verbinding tussen de client en server relatief langzaam is, wilt u fps mogelijk instellen op een relatief lage waarde. Wanneer de client is verbonden met een toepassing met meerdere gebruikers waarbij timing zeer belangrijk is, wilt u fps mogelijk juist instellen op een relatief hoge waarde.

Wanneer fps wordt ingesteld, wordt een gebeurtenis sync geactiveerd en worden alle wijzigingen in de server bijgewerkt. Wanneer u de server alleen handmatig wilt bijwerken, stelt u fps in op 0.

Wijzigingen worden pas naar de server verzonden wanneer de gebeurtenis sync wordt verzonden. Wanneer de reactietijd van de server lang is, kunnen updates mogelijk minder vaak naar de server worden verzonden dan de waarde die is opgegeven in deze eigenschap.



Implementatie
    public function set fps(value:Number):void

objectEncoding

eigenschap 
objectEncoding:uint

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

De objectcodering (AMF-versie) voor dit gezamenlijke object. Wanneer een lokaal, gezamenlijk object naar schijf wordt geschreven, geeft de eigenschap objectEncoding aan welke versie van Action Message Format moet worden gebruikt: de indeling van ActionScript 3.0 (AMF3) of de indeling van ActionScript 1.0 of 2.0 (AMF0).

Objectcodering wordt verschillend verwerkt, afhankelijk van het feit of het gezamenlijk object lokaal of extern is.

  • Lokale, gezamenlijke objecten. U de waarde van de eigenschap objectEncoding ophalen of instellen voor lokale, gezamenlijke objecten. De waarde van objectEncoding heeft invloed op de indeling die wordt gebruikt om dit lokale, gezamenlijke object te schrijven. Wanneer dit lokale, gezamenlijke object leesbaar moet zijn voor SWF-bestanden waarin ActionScript 1.0 of 2.0 wordt gebruikt, stelt u objectEncoding in op ObjectEncoding.AMF0. Zelfs wanneer de objectcodering wordt ingesteld om AMF3 te schrijven, kan Flash Player nog steeds lokale, gezamenlijke objecten in AMF0-indeling lezen. Wanneer u de standaardwaarde van deze eigenschap, ObjectEncoding.AMF3, gebruikt, kan uw SWF-bestand dus nog steeds gezamenlijke objecten lezen die zijn gemaakt door SWF-bestanden waarin ActionScript 1.0 of 2.0 wordt gebruikt.
  • Externe, gezamenlijke objecten. Wanneer een extern, gezamenlijk object is verbonden met de server, overerft dit object de instelling objectEncoding van de gekoppelde instantie NetConnection (de instantie die wordt gebruikt om het externe, gezamenlijke object te verbinden). Wanneer een extern, gezamenlijk object niet is verbonden met de server, overerft dit object de instelling defaultObjectEncoding van de gekoppelde instantie NetConnection. Aangezien de waarde van de eigenschap objectEncoding van een extern, gezamenlijk object wordt bepaald door de instantie NetConnection, is deze eigenschap alleen-lezen voor externe, gezamenlijke objecten.



Implementatie
    public function get objectEncoding():uint
    public function set objectEncoding(value:uint):void

Gegenereerde uitzondering
ReferenceError — U wilde de waarde van de eigenschap objectEncoding instellen op een extern, gezamenlijk object. Deze eigenschap is alleen-lezen voor externe, gezamenlijke objecten omdat de waarde ervan wordt bepaald door de gekoppelde instantie NetConnection.

Verwante API-elementen

    

preventBackup

eigenschap 
preventBackup:Boolean

Taalversie: ActionScript 3.0
Runtimeversies: AIR 3.7

Geeft aan of al dan niet een back-up wordt gemaakt van lokaal gedeelde objecten op de back-upservice van de iOS-cloud.

Geef true of false op:

  • true - Voorkomt dat een back-up wordt gemaakt van lokaal gedeelde objecten op de back-upservice van de iOS-cloud.
  • false (standaardinstelling) - Er wordt een back-up gemaakt van lokaal gedeelde objecten op de back-upservice van de iOS-cloud.

Deze eigenschap is alleen van toepassing op lokaal gedeelde objecten en is alleen voor iOS.



Implementatie
    public static function get preventBackup():Boolean
    public static function set preventBackup(value:Boolean):void

size

eigenschap 
size:uint  [alleen-lezen]

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

De huidige grootte van het gezamenlijke object, in bytes.

Flash berekent de grootte van een gezamenlijk object door alle gegevenseigenschappen ervan te doorlopen. Hoe meer gegevenseigenschappen het object heeft, hoe langer het bepalen van de grootte duurt. Het bepalen van de objectgrootte kan een aanzienlijke hoeveelheid verwerkingstijd in beslag nemen. Mogelijk wilt u deze methode vermijden tenzij u deze expliciet moet gebruiken.



Implementatie
    public function get size():uint

Voorbeeld  ( Hoe dit voorbeeld te gebruiken )
In de volgende code wordt een object SharedObject met een ID "thehobbit" gemaakt. Een eigenschap met de naam username wordt toegevoegd aan de eigenschap data van het object SharedObject. Vervolgens wordt de eigenschap size gevolgd, die de aangegeven waarde retourneert.
import flash.net.SharedObject;

// if these get copied or not
var mySo:SharedObject = SharedObject.getLocal("thehobbit");
mySo.data.username = "bilbobaggins";
trace(mySo.size); // 55
Methodedetails

clear

()methode
public function clear():void

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Schoont alle gegevens van lokale, gezamenlijke objecten op en verwijdert het gezamenlijke object van de schijf. De verwijzing naar het gezamenlijke object is nog steeds actief, maar de eigenschappen data ervan zijn verwijderd.

Voor externe, gezamenlijke objecten die met Flash Media Server worden gebruikt, verbreekt clear() de verbinding met het object en schoont alle gegevens op. Wanneer het gezamenlijke object lokaal blijvend is, verwijdert deze methode bovendien het gezamenlijke object van de schijf. De verwijzing naar het gezamenlijke object is nog steeds actief, maar de eigenschappen data ervan zijn verwijderd.


Voorbeeld  ( Hoe dit voorbeeld te gebruiken )

In de volgende code wordt een object SharedObject gemaakt (en bij volgende uitvoeringen opgehaald) met een ID met de waarde van hostName. Een eigenschap met de naam username wordt toegevoegd aan de eigenschap data van het object SharedObject. Ten slotte wordt de methode clear() aangeroepen, waarmee alle informatie wordt gewist die werd toegevoegd aan het gegevensobject (in dit geval een enkele eigenschap met de naam username ).
package {
    import flash.net.SharedObject;

    public class SharedObject_clear {
        private var hostName:String = "yourDomain";
        private var username:String = "yourUsername";

        public function SharedObject_clear() {
            var mySo:SharedObject = SharedObject.getLocal(hostName);
            if(mySo.data.username == null) {
                mySo.data.username = username;
                trace("set: " + mySo.data.username); // yourUsername
            }
            else {
                mySo.clear();
                trace("cleared: " + mySo.data.username); // undefined
            }
        }
    }
}

close

()methode 
public function close():void

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Sluit de verbinding tussen een extern, gezamenlijk object en de server. Wanneer een extern, gezamenlijk object lokaal blijvend is, kan de gebruiker wijzigingen aanbrengen in de lokale kopie van het object nadat deze methode is aangeroepen. De volgende keer dat de gebruiker verbinding maakt met het externe, gezamenlijke object, worden wijzigingen in het lokale object verstuurd naar de server.

connect

()methode 
public function connect(myConnection:NetConnection, params:String = null):void

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Maakt met een extern, gezamenlijk object op een server verbinding via een opgegeven object NetConnection. Gebruik deze methode na het aanroepen van getRemote(). Wanneer de verbinding is gelukt, wordt de gebeurtenis sync verzonden.

Voordat u met een extern, gezamenlijk object gaat werken, moet u eerst op fouten controleren met een instructie try..catch..finally. Luister vervolgens naar de gebeurtenis sync en handel deze af voordat u het gezamenlijke object wijzigt. Wijzigingen die lokaal worden doorgevoerd, voordat de gebeurtenis sync wordt verzonden, kunnen verloren gaan.

Roep de methode connect() aan om verbinding te maken met een extern, gezamenlijk object, bijvoorbeeld:

     var myRemoteSO:SharedObject = SharedObject.getRemote("mo", myNC.uri, false);
     myRemoteSO.connect(myNC);
     

Parameters

myConnection:NetConnection — Een object NetConnection (bijvoorbeeld een object NetConnection dat wordt gebruikt voor communicatie met Flash Media Server) dat gebruikmaakt van RTMP (Real-Time Messaging Protocol).
 
params:String (default = null) — Een tekenreeks die een bericht definieert dat aan het externe, gezamenlijke object op de server moet worden doorgegeven. Kan niet worden gebruikt met Flash Media Server.


Gegenereerde uitzondering
Error — Flash Player kan geen verbinding maken met het opgegeven externe, gezamenlijke object. Controleer of de instantie NetConnection geldig is en is verbonden en of het externe, gezamenlijke object is gemaakt op de server.

Verwante API-elementen

flush

()methode 
public function flush(minDiskSpace:int = 0):String

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Schrijft een lokaal blijvend gezamenlijk object direct naar een lokaal bestand. Wanneer u deze methode niet gebruikt, schrijft Flash Player het gezamenlijke object naar een bestand wanneer de sessie van het gezamenlijke object wordt beëindigd. Dit gebeurt wanneer het SWF-bestand wordt gesloten, wanneer het gezamenlijke object wordt opgeschoond omdat er geen verwijzingen meer naar bestaan of wanneer uSharedObject.clear() of SharedObject.close() aanroept.

Wanneer deze methode SharedObjectFlushStatus.PENDING retourneert, wordt in Flash Player een dialoogvenster weergegeven waarin de gebruiker wordt gevraagd de hoeveelheid beschikbare schijfruimte voor objecten van dit domein te verhogen. Wanneer u de ruimte voor het gezamenlijke object wilt uitbreiden wanneer het in de toekomst wordt opgeslagen (dit voorkomt geretourneerde waarden PENDING), kunt u een waarde voor minDiskSpace doorgeven. Wanneer Flash Player het bestand probeert te schrijven, wordt gezocht naar het aantal bytes dat aan minDiskSpace is doorgegeven in plaats van te zoeken naar voldoende ruimte om het gezamenlijke object met de huidige grootte op te slaan.

Wanneer u bijvoorbeeld verwacht dat een gezamenlijk object maximaal 500 bytes groot wordt, geeft u 500 door voor minDiskSpace, ook wanneer het object in het begin veel kleiner is. Wanneer Flash de gebruiker vraagt om schijfruimte toe te wijzen voor het gezamenlijke object, wordt er om 500 bytes gevraagd. Wanneer de gebruiker deze hoeveelheid heeft toegewezen, hoeft in Flash niet meer om meer ruimte te worden gevraagd voor toekomstige pogingen om het object leeg te maken (zolang het object niet groter is dan 500 bytes).

Nadat de gebruiker op het dialoogvenster reageert, wordt deze methode weer aangeroepen. Er wordt een gebeurtenis netStatus verzonden met een code-eigenschap SharedObject.Flush.Success of SharedObject.Flush.Failed.

Parameters

minDiskSpace:int (default = 0) — De minimum schrijfruimte die voor dit object moet worden gereserveerd, in bytes.

Geretourneerde waarde
String — Een van de volgende waarden:
  • SharedObjectFlushStatus.PENDING: De gebruiker heeft voor objecten van dit domein lokale opslag van gegevens toegestaan, maar er is niet voldoende schijfruimte toegewezen om het object op te slaan. De gebruiker wordt gevraagd meer ruimte toe te staan. Om ruimte beschikbaar te maken zodat de grootte van het gezamenlijke object kan toenemen, en op die manier een geretourneerde waarde SharedObjectFlushStatus.PENDING te voorkomen, moet u een waarde doorgeven voor minDiskSpace.
  • SharedObjectFlushStatus.FLUSHED: Het gezamenlijke object is naar een bestand op de lokale schijf geschreven.

Gegenereerde uitzondering
Error — Flash Player kan het gezamenlijke object niet naar schijf schrijven. Deze fout kan optreden wanneer de gebruiker voor objecten van dit domein lokale opslag van gegevens permanent heeft geweigerd.

Opmerking: lokale inhoud kan altijd gezamenlijke objecten van domeinen van derden (andere domeinen dan het domein in de huidige adresbalk van de browser) naar schijf schrijven, zelfs wanneer het schrijven van gezamenlijke objecten van derden naar schijf niet is toegestaan.

Verwante API-elementen


Voorbeeld  ( Hoe dit voorbeeld te gebruiken )

In de volgende code wordt een object SharedObject gemaakt (en bij volgende uitvoeringen opgehaald) met een ID met de waarde van hostName. Een eigenschap met de naam username wordt toegevoegd aan de eigenschap data van het object SharedObject. Vervolgens wordt de methode flush() aangeroepen, gevolgd door een controle om te bepalen of de tekenreeks pending of een van de Booleaanse waarden true of false werd geretourneerd. Houd er rekening mee dat alle open instanties SharedObject automatisch worden leeggemaakt wanneer de huidige instantie van Flash Player wordt gesloten.
package {
    import flash.net.SharedObject;

    public class SharedObject_flush {
        private var hostName:String = "yourDomain";
        private var username:String = "yourUsername";

        public function SharedObject_flush() {
            var mySo:SharedObject = SharedObject.getLocal(hostName);
            mySo.data.username = username;
            var flushResult:Object = mySo.flush();
            trace("flushResult: " + flushResult);
            trace(mySo.data.username); // yourUsername
        }
    }
}

getLocal

()methode 
public static function getLocal(name:String, localPath:String = null, secure:Boolean = false):SharedObject

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Retourneert een verwijzing naar een lokaal blijvend gezamenlijk object dat alleen voor de huidige client beschikbaar is. Wanneer het gezamenlijke object nog niet bestaat, wordt dit gemaakt met deze methode. Wanneer een waarde die wordt doorgegeven aan getLocal() ongeldig is, of wanneer de aanroep mislukt, genereert Flash Player een uitzondering.

De volgende code toont hoe u de geretourneerde verwijzing naar een gezamenlijk object toewijst aan een variabele:

var so:SharedObject = SharedObject.getLocal("savedData");

Opmerking: wanneer de gebruiker heeft opgegeven dat lokale opslag voor dit domein nooit is toegestaan, wordt het object niet lokaal opgeslagen, ook niet wanneer een waarde wordt opgegeven voor localPath. De uitzondering op deze regel is lokale inhoud. Lokale inhoud kan altijd gezamenlijke objecten van domeinen van derden (andere domeinen dan het domein in de huidige adresbalk van de browser) naar schijf schrijven, zelfs wanneer het schrijven van gezamenlijke objecten van derden naar schijf niet is toegestaan.

Flash controleert de locatie van het SWF-bestand waarmee het gezamenlijke object is gemaakt om naamconflicten te vermijden. Wanneer een bestand op www.myCompany.com/apps/stockwatcher.swf het gezamenlijke object portfolio maakt, bestaat er bijvoorbeeld geen conflict met een object met de naam portfolio dat is gemaakt door een SWF-bestand op www.yourCompany.com/photoshoot.swf omdat de SWF-bestanden afkomstig zijn uit verschillende mappen.

Hoewel de parameter localPath optioneel is, kan deze in bepaalde gevallen zeer nuttig zijn, vooral wanneer andere SWF-bestanden toegang moeten hebben tot het gezamenlijke object. Wanneer de gegevens in het gezamenlijke object specifiek bij één SWF-bestand horen dat niet naar een andere locatie wordt verplaatst, is het nuttig om de standaardwaarde te gebruiken. Wanneer andere SWF-bestanden toegang tot het gezamenlijke object moeten hebben, of wanneer het SWF-bestand waarmee het gezamenlijke object wordt gemaakt later wordt verplaatst, bepaalt de waarde van deze parameter de toegankelijkheid van het gezamenlijke object. Wanneer u bijvoorbeeld een gezamenlijk object maakt waarvoor localPath is ingesteld op de standaardwaarde van het volledige pad naar het SWF-bestand, heeft geen ander SWF-bestand toegang tot dat gezamenlijke object. Wanneer u het oorspronkelijke SWF-bestand later naar een andere locatie verplaatst, heeft zelfs dat SWF-bestand geen toegang meer tot de gegevens die al zijn opgeslagen in het gezamenlijke object.

Wanneer u wilt voorkomen dat toegang tot een gezamenlijk object per ongeluk wordt beperkt, gebruikt u de parameter localpath. De meest tolerante benadering is om de parameter localPath in te stellen op / (slash). Daarmee is het gezamenlijke object beschikbaar voor alle SWF-bestanden in het domein, maar is de kans op naamconflicten met andere gezamenlijke objecten in het domein groter. Een meer beperkende benadering is om mapnamen uit het volledige pad naar het SWF-bestand toe te voegen aan localPath. Voor een gezamenlijk object portfolio dat is gemaakt door het SWF-bestand op www.myCompany.com/apps/stockwatcher.swf, kunt u de parameter localPath bijvoorbeeld instellen op /, /apps of /apps/stockwatcher.swf. U moet bepalen welke benadering optimale flexibiliteit biedt voor uw toepassing.

Houd rekening met het volgende beveiligingsmodel wanneer u deze methode gebruikt:

  • U hebt geen toegang tot gezamenlijke objecten die sandbox-grenzen overschrijden.
  • Gebruikers kunnen de toegang tot gezamenlijke objecten beperken via het dialoogvenster Flash Player Settings of via Settings Manager. Een toepassing kan standaard gezamenlijke objecten maken van maximaal 100 kB aan gegevens per domein. Beheerders en gebruikers kunnen ook beperkingen instellen voor het schrijven naar het bestandssysteem.

Stel dat u SWF-bestandsinhoud publiceert om deze af te spelen als lokale bestanden (lokaal geïnstalleerde SWF-bestanden of EXE-bestanden) en u vanuit meerdere lokale SWF-bestanden toegang tot een bepaald gezamenlijk object moet hebben. In dat geval moet u er rekening mee houden dat voor lokale bestanden twee verschillende locaties kunnen worden gebruikt om gezamenlijke objecten op te slaan. Welk domein wordt gebruikt, is afhankelijk van de verleende beveiligingsbevoegdheden aan het lokale bestand waarmee het gezamenlijke object is gemaakt. Voor lokale bestanden kunnen drie verschillende bevoegdheidsniveaus worden ingesteld:

  1. Alleen toegang tot het lokale bestandssysteem.
  2. Alleen toegang tot het netwerk.
  3. Toegang tot zowel het lokale bestandsysteem als het netwerk.

Lokale bestanden met toegang tot het lokale bestandssysteem (niveau 1 of 3) slaan hun gezamenlijke objecten op één locatie op. Lokale bestanden zonder toegang tot het lokale bestandssysteem (niveau 2) slaan hun gezamenlijke objecten op verschillende locaties op.

U kunt voorkomen dat een SWF-bestand deze methode gebruikt door de parameter allowNetworking in te stellen van de tags object en embed op de HTML-pagina die de SWF-inhoud bevat.

Lees voor meer informatie het onderwerp Security in het Flash Player Developer Center.

Parameters

name:String — De naam van het object. De naam mag slashes (/ ) bevatten, dus werk/adressen is bijvoorbeeld een geldige naam. Spaties zijn niet toegestaan in de naam van een gezamenlijk object, evenmin als de volgende tekens:
  ~ % & \ ; : " ' , < > ? # 
  
 
localPath:String (default = null) — Het volledige of gedeeltelijke pad naar het SWF-bestand waarmee het gezamenlijke object is gemaakt en dat bepaalt waar het gezamenlijke object lokaal wordt opgeslagen. Wanneer u deze parameter niet opgeeft, wordt het volledige pad gebruikt.
 
secure:Boolean (default = false) — Hiermee wordt bepaald of alleen SWF-bestanden die worden geleverd via een HTTPS-verbinding toegang tot dit gezamenlijke object krijgen. Wanneer uw SWF-bestand wordt geleverd via HTTPS, heeft de waarde van deze parameter de volgende effecten:
  • Als deze parameter wordt ingesteld op true, wordt er in Flash Player een nieuw beveiligd gezamenlijk object gemaakt of wordt er een verwijzing naar een bestaand beveiligd gezamenlijk object opgehaald. Alleen SWF-bestanden die via HTTPS worden geleverd en SharedObject.getLocal() aanroepen met de parameter secure ingesteld op true hebben lees- en schrijftoegang tot dit beveiligde gezamenlijke object.
  • Als deze parameter wordt ingesteld op false, wordt er in Flash Player een nieuw gezamenlijk object gemaakt of wordt er een verwijzing opgehaald naar een bestaand gezamenlijk object, waartoe SWF-bestanden die via niet-HTTPS-verbindingen worden geleverd, lees- en schrijftoegang hebben.

Wanneer uw SWF-bestand wordt geleverd via een niet-HTTPS-verbinding en u deze parameter probeert in te stellen op true, mislukt het maken van een nieuw gezamenlijk object (of de toegang tot een eerder gemaakt beveiligd gezamenlijk object) en wordt null geretourneerd. Ongeacht de waarde van deze parameter, tellen de gemaakte gezamenlijke objecten mee voor de toegestane totale hoeveelheid schijfruimte voor een domein.

In het volgende voorbeeld wordt getoond hoe de parameter secure kan worden gebruikt:

diagram met beveiligd gezamenlijk object

Geretourneerde waarde
SharedObject — Een verwijzing naar een gezamenlijk object dat lokaal blijvend is en alleen voor de huidige client beschikbaar is. Wanneer Flash Player het gezamenlijke object niet kan maken of vinden (bijvoorbeeld wanneer localPath is opgegeven terwijl deze map niet bestaat), genereert deze methode een uitzondering.

Gegenereerde uitzondering
Error — Flash Player kan het gezamenlijke object om wat voor reden dan ook niet maken. Deze fout kan optreden wanneer het maken van een blijvend, gezamenlijk object en de opslag ervan door Flash-inhoud van derden niet wordt toegestaan (is niet van toepassing op lokale inhoud). Gebruikers kunnen blijvende, gezamenlijke objecten van derden weigeren via het deelvenster Global Storage Settings van Settings Manager op http://www.adobe.com/support/documentation/nl/flashplayer/help/settings_manager03.html.

getRemote

()methode 
public static function getRemote(name:String, remotePath:String = null, persistence:Object = false, secure:Boolean = false):SharedObject

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Retourneert een verwijzing naar een gezamenlijk object op Flash Media Server dat door meerdere clients kan worden benaderd. Wanneer het externe, gezamenlijke object nog niet bestaat, wordt dit gemaakt met deze methode.

Als u een extern, gezamenlijk object wilt maken, roept u getRemote() en vervolgens connect() aan om het externe gezamenlijke object te verbinden met de server, zoals hieronder wordt getoond:

     var nc:NetConnection = new NetConnection();
     nc.connect("rtmp://somedomain.com/applicationName");
     var myRemoteSO:SharedObject = SharedObject.getRemote("mo", nc.uri, false);
     myRemoteSO.connect(nc);
     

Luister naar de gebeurtenis sync en handel deze af om te controleren of de lokale en externe kopieën van het gezamenlijke object zijn gesynchroniseerd. Alle clients die dit object willen delen, moeten dezelfde waarden doorgeven voor de parameters name en remotePath.

Wanneer u een gezamenlijk object wilt maken dat alleen beschikbaar is voor de huidige client, gebruikt u SharedObject.getLocal().

Parameters

name:String — De naam van het externe, gezamenlijke object. De naam mag slashes (/) bevatten, dus werk/adressen is bijvoorbeeld een geldige naam. Spaties zijn niet toegestaan in de naam van een gezamenlijk object, evenmin als de volgende tekens:
    ~ % & \ ; :  " ' , > ? ? #
 
remotePath:String (default = null) — De URI van de server waar het gezamenlijke object wordt opgeslagen. Deze URI moet gelijk zijn aan de URI van het object NetConnection die wordt doorgegeven aan de methode connect().
 
persistence:Object (default = false) — Hiermee wordt aangegeven of de kenmerken van de eigenschap data van een gezamenlijk object lokaal blijvend, extern blijvend of beide zijn. Deze parameter kan ook opgeven waar het gezamenlijke object lokaal wordt opgeslagen. Acceptabele waarden zijn:
  • De waarde false geeft aan dat het gezamenlijke object niet blijvend is op de client of server.
  • De waarde true geeft aan dat het gezamenlijke object alleen blijvend is op de server.
  • Een volledig of gedeeltelijk lokaal pad naar het gezamenlijke object geeft aan dat het gezamenlijke object blijvend is op de client of server. Op de client wordt het object opgeslagen in het opgegeven pad. Op de server wordt het object opgeslagen in een submap van de toepassingsmap.

Opmerking: wanneer de gebruiker heeft opgegeven dat lokale opslag voor dit domein nooit is toegestaan, wordt het object niet lokaal opgeslagen, ook niet wanneer een lokaal pad wordt opgegeven voor de parameter persistence. Zie de beschrijving van de klasse voor meer informatie.

 
secure:Boolean (default = false) — Hiermee wordt bepaald of alleen SWF-bestanden die worden geleverd via een HTTPS-verbinding toegang tot dit gezamenlijke object krijgen. Zie de beschrijving van de parameter secure bij de vermelding van de methode getLocal voor meer informatie.

Geretourneerde waarde
SharedObject — Een verwijzing naar een object dat door meerdere clients kan worden gedeeld.

Gegenereerde uitzondering
Error — Flash Player kan het gezamenlijke object niet maken of vinden. Dit kan voorkomen wanneer niet-bestaande paden zijn opgegeven voor de parameters remotePath en persistence.

Verwante API-elementen

send

()methode 
public function send(... arguments):void

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Verzendt een bericht naar alle clients die met een extern, gezamenlijk object zijn verbonden en naar de client die het bericht heeft verzonden. Wanneer u het bericht wilt verwerken en erop wilt reageren, maakt u een callback-functie die aan het gezamenlijke object is gekoppeld.

Parameters

... arguments — Een of meer argumenten: een tekenreeks die het bericht identificeert, de naam van een of meer handlerfuncties om aan het gezamenlijke object te koppelen, en optionele parameters van een willekeurig type. De naam van de handler kan slechts één niveau diep zijn genest (en kan dus niet de vorm bovenliggend/onderliggend hebben) en is relatief ten opzichte van het gezamenlijke object. De argumenten hebben een serienummer en worden verzonden via de verbinding. De ontvangende handler ontvangt de argumenten in dezelfde volgorde. Wanneer een parameter een circulair object is (bijvoorbeeld een gekoppelde lijst met kringverwijzingen) worden de verwijzingen op de juiste manier verwerkt door de serienummering.

Opmerking: gebruik geen gereserveerde term voor de functienamen. Zo zal myRemoteSO.send("close") bijvoorbeeld mislukken.

setDirty

()methode 
public function setDirty(propertyName:String):void

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Geeft aan de server door dat de waarde van een eigenschap in het gezamenlijke object is gewijzigd. Deze methode markeert eigenschappen als dirty, hetgeen gewijzigd betekent.

Roep SharedObject.setProperty() aan om eigenschappen te maken voor een gezamenlijk object.

De methode SharedObject.setProperty() implementeert de methode setDirty(). In de meeste gevallen, bijvoorbeeld wanneer de waarde van een eigenschap een elementair type zoals String of Number is, kunt u setProperty() aanroepen in plaats van setDirty(). Wanneer de waarde van een eigenschap echter een object is dat de eigen eigenschappen bevat, roept u setDirty() aan om aan te geven wanneer een waarde binnen het object is gewijzigd.

Parameters

propertyName:String — De naam van de eigenschap die is gewijzigd.

Verwante API-elementen

setProperty

()methode 
public function setProperty(propertyName:String, value:Object = null):void

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Werkt de waarde van een eigenschap in een gezamenlijk object bij en geeft aan de server door dat de waarde van de eigenschap is gewijzigd. De methode setProperty() markeert eigenschappen expliciet als gewijzigd (of 'dirty').

Raadpleeg de documentatie over Flash Media Server voor meer informatie over externe, gezamenlijke objecten.

Opmerking: de methode SharedObject.setProperty() implementeert de methode setDirty(). In de meeste gevallen, bijvoorbeeld wanneer de waarde van een eigenschap een elementair type zoals String of Number is, gebruikt u setProperty() in plaats van setDirty(). Wanneer de waarde van een eigenschap echter een object is dat de eigen eigenschappen bevat, gebruikt u setDirty() om aan te geven wanneer een waarde binnen het object is gewijzigd. Het is over het algemeen raadzaam setProperty() aan te roepen in plaats van setDirty(), omdat setProperty() een eigenschapwaarde alleen bijwerkt wanneer deze waarde is gewijzigd, terwijl setDirty() synchronisatie op alle geabonneerde clients forceert.

Parameters

propertyName:String — De naam van de eigenschap in het gezamenlijke object.
 
value:Object (default = null) — De waarde van de eigenschap (een object ActionScript) of null om de eigenschap te verwijderen.

Verwante API-elementen

Gebeurtenisdetails

asyncError

Gebeurtenis
Type gebeurtenisobject: flash.events.AsyncErrorEvent
eigenschap AsyncErrorEvent.type = flash.events.AsyncErrorEvent.ASYNC_ERROR

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Wordt verzonden wanneer een uitzondering asynchroon wordt gegenereerd, dat wil zeggen, vanuit native asynchrone code.

De constante AsyncErrorEvent.ASYNC_ERROR definieert de waarde van de eigenschap type van een gebeurtenisobject asyncError.

Deze gebeurtenis heeft de volgende eigenschappen:

EigenschapWaarde
bubblesfalse
cancelablefalse; er is geen standaardgedrag om te annuleren.
currentTargetHet object dat het gebeurtenisobject actief verwerkt met een gebeurtenislistener.
targetHet object dat de gebeurtenis verzendt.
errorDe fout die de gebeurtenis heeft geactiveerd.

netStatus

Gebeurtenis  
Type gebeurtenisobject: flash.events.NetStatusEvent
eigenschap NetStatusEvent.type = flash.events.NetStatusEvent.NET_STATUS

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Wordt verzonden wanneer een instantie SharedObject de status of fout meldt. De gebeurtenis netStatus bevat de eigenschap info. Dit is een informatieobject dat specifieke informatie over de gebeurtenis bevat, zoals of een poging om verbinding te maken is geslaagd en of het gezamenlijke object naar de lokale schijf is geschreven.

Definieert de waarde van de eigenschap type van een gebeurtenisobject netStatus.

Deze gebeurtenis heeft de volgende eigenschappen:

EigenschapWaarde
bubblesfalse
cancelablefalse; er is geen standaardgedrag om te annuleren.
currentTargetHet object dat het gebeurtenisobject actief verwerkt met een gebeurtenislistener.
infoEen object met eigenschappen die de status of fout van het object beschrijven.
targetHet object NetConnection of NetStream dat zijn status meldt.

Verwante API-elementen

sync

Gebeurtenis  
Type gebeurtenisobject: flash.events.SyncEvent
eigenschap SyncEvent.type = flash.events.SyncEvent.SYNC

Taalversie: ActionScript 3.0
Runtimeversies: AIR 1.0, Flash Player 9, Flash Lite 4

Wordt verzonden wanneer een extern, gezamenlijk object door de server is bijgewerkt.

Definieert de waarde van de eigenschap type van een gebeurtenisobject sync.

Deze gebeurtenis heeft de volgende eigenschappen:

EigenschapWaarde
bubblesfalse
cancelablefalse; er is geen standaardgedrag om te annuleren.
currentTargetHet object dat het gebeurtenisobject actief verwerkt met een gebeurtenislistener.
changeListArray met eigenschappen die de status van de array beschrijven.
targetDe instantie SharedObject die is bijgewerkt door de server.

Verwante API-elementen

SharedObjectExample.as

In de volgende code wordt een gezamenlijk object gemaakt (en bij volgende uitvoeringen opgehaald) met de ID "application-name". Wanneer op de knop Opslaan wordt gedrukt, probeert de methode saveValue() een eigenschap met de naam savedValue op te slaan naar de eigenschap data van het object SharedObject. Wanneer Flash Player toestemming moet vragen om de gegevens op te slaan, wordt de methode onFlushStatus() aangeroepen wanneer de gebruiker toestemming geeft of weigert. Wanneer op de knop Wissen wordt geklikt, verwijdert de methode clearValue() de waarde die is opgeslagen in savedValue. De volgende keer dat het SWF-bestand wordt geladen, is de waarde die wordt opgehaald undefined.
package {
    import flash.display.Sprite;
    import flash.events.MouseEvent;
    import flash.events.NetStatusEvent;
    import flash.net.SharedObject;
    import flash.net.SharedObjectFlushStatus;
    import flash.text.TextField;
    import flash.text.TextFieldAutoSize;
    import flash.text.TextFieldType;
    
    public class SharedObjectExample extends Sprite {
        
        private var mySo:SharedObject;
        
        public function SharedObjectExample() {
            buildUI();
            saveBtn.addEventListener(MouseEvent.CLICK, saveValue);
            clearBtn.addEventListener(MouseEvent.CLICK, clearValue);
            
            mySo = SharedObject.getLocal("application-name");
            output.appendText("SharedObject loaded...\n");
            output.appendText("loaded value: " + mySo.data.savedValue + "\n\n");
        }

         private function saveValue(event:MouseEvent):void {
            output.appendText("saving value...\n");
            mySo.data.savedValue = input.text;
            
            var flushStatus:String = null;
            try {
                flushStatus = mySo.flush(10000);
            } catch (error:Error) {
                output.appendText("Error...Could not write SharedObject to disk\n");
            }
            if (flushStatus != null) {
                switch (flushStatus) {
                    case SharedObjectFlushStatus.PENDING:
                        output.appendText("Requesting permission to save object...\n");
                        mySo.addEventListener(NetStatusEvent.NET_STATUS, onFlushStatus);
                        break;
                    case SharedObjectFlushStatus.FLUSHED:
                        output.appendText("Value flushed to disk.\n");
                        break;
                }
            }
            output.appendText("\n");
        }
        
        private function clearValue(event:MouseEvent):void {
            output.appendText("Cleared saved value...Reload SWF and the value should be \"undefined\".\n\n");
            delete mySo.data.savedValue;
        }
        
        private function onFlushStatus(event:NetStatusEvent):void {
            output.appendText("User closed permission dialog...\n");
            switch (event.info.code) {
                case "SharedObject.Flush.Success":
                    output.appendText("User granted permission -- value saved.\n");
                    break;
                case "SharedObject.Flush.Failed":
                    output.appendText("User denied permission -- value not saved.\n");
                    break;
            }
            output.appendText("\n");

            mySo.removeEventListener(NetStatusEvent.NET_STATUS, onFlushStatus);
        }
        
        // UI elements
        private var inputLbl:TextField;
        private var input:TextField;
        private var output:TextField;
        private var saveBtn:Sprite;
        private var clearBtn:Sprite;
    
        private function buildUI():void {
            // input label
            inputLbl = new TextField();
            addChild(inputLbl);
            inputLbl.x = 10;
            inputLbl.y = 10;
            inputLbl.text = "Value to save:";
            
            // input TextField
            input = new TextField();
            addChild(input);
            input.x = 80;
            input.y = 10;
            input.width = 100;
            input.height = 20;
            input.border = true;
            input.background = true;
            input.type = TextFieldType.INPUT;
            
            // output TextField
            output = new TextField();
            addChild(output);
            output.x = 10;
            output.y = 35;
            output.width = 250;
            output.height = 250;
            output.multiline = true;
            output.wordWrap = true;
            output.border = true;
            output.background = true;
            
            // Save button
            saveBtn = new Sprite();
            addChild(saveBtn);
            saveBtn.x = 190;
            saveBtn.y = 10;
            saveBtn.useHandCursor = true;
            saveBtn.graphics.lineStyle(1);
            saveBtn.graphics.beginFill(0xcccccc);
            saveBtn.graphics.drawRoundRect(0, 0, 30, 20, 5, 5);
            var saveLbl:TextField = new TextField();
            saveBtn.addChild(saveLbl);
            saveLbl.text = "Save";
            saveLbl.selectable = false;
            
            // Clear button
            clearBtn = new Sprite();
            addChild(clearBtn);
            clearBtn.x = 230;
            clearBtn.y = 10;
            clearBtn.useHandCursor = true;
            clearBtn.graphics.lineStyle(1);
            clearBtn.graphics.beginFill(0xcccccc);
            clearBtn.graphics.drawRoundRect(0, 0, 30, 20, 5, 5);
            var clearLbl:TextField = new TextField();
            clearBtn.addChild(clearLbl);
            clearLbl.text = "Clear";
            clearLbl.selectable = false;
        }
    }
}




[ X ]Waarom in het Engels?
Sommige inhoud van de Naslaggids voor ActionScript 3.0 staat in het Engels

Niet alle onderdelen van de Naslaggids voor ActionScript 3.0 zijn in alle talen vertaald. Wanneer een taalelement niet is vertaald, wordt het in het Engels weergegeven. Zo is de klasse ga.controls.HelpBox niet in elke taal vertaald. In de Nederlandse versie van de naslaggids wordt de klasse ga.controls.HelpBox bijvoorbeeld in het Engels weergegeven.