Een bestandspromise is een klembordindeling voor verslepen en neerzetten waarmee een gebruiker een bestand kan verslepen die nog niet buiten een AIR-toepassing bestaat. Met een bestandsbelofte kunt u bijvoorbeeld toestaan dat een gebruiker een proxypictogram naar een bureaubladmap sleept. Het proxypictogram representeert een bestand of gegevens die via een URL beschikbaar zijn. Nadat de gebruiker het pictogram heeft neergezet, worden de gegevens gedownload en wordt het bestand geschreven naar de locatie waar de bestandsbelofte is neergezet.
Gebruik de URLFilePromise-klasse in een AIR-toepassing om bestanden die via een URL toegankelijk zijn, te slepen en neer te zetten. De URLFilePromise-implementatie is opgenomen in de aircore-bibliotheek als onderdeel van de SDK van AIR 2. Gebruik ofwel het bestand aircore.swc of aircore.swf in de map SDK frameworks/libs/air.
U kunt ook uw eigen FilePromise-logica implementeren met de IFilePromise-interface (gedefinieerd in het runtime flash.desktop-pakket).
Het concept van bestandsbeloften is vergelijkbaar met uitgestelde rendering aan de hand van een gegevenshandlerfunctie op het klembord. Gebruik bij het slepen en neerzetten van bestanden bestandsbeloften in plaats van uitgestelde rendering. De techniek voor uitgestelde rendering kan bij het genereren of downloaden van gegevens leiden tot ongewenste pauzes in de sleepbeweging. Gebruik uitgestelde rendering voor kopiëren en plakken (hiervoor is geen ondersteuning bij bestandsbeloften).
Beperkingen voor bestandsbeloften
Bestandsbeloften hebben de volgende beperkingen vergeleken met andere gegevensindelingen die u kunt plaatsen op het klembord voor slepen en neerzetten:
-
Bestandsbeloften kunnen alleen uit een AIR-toepassing worden gesleept. Ze kunnen niet in een AIR-toepassing worden neergezet.
-
Bestandsbeloften worden niet op alle besturingssystemen ondersteund. Gebruik de eigenschap
Clipboard.supportsFilePromise
om te testen of bestandsbeloften op het hostsysteem worden ondersteund. Op systemen die geen ondersteuning bieden voor bestandsbeloften, moet u een alternatief mechanisme bieden voor het downloaden of het genereren van de bestandsgegevens.
-
Bestandsbeloften kunnen niet worden gebruikt op het klembord voor kopiëren en plakken (
Clipboard.generalClipboard
).
|
|
|