Skip to content

Image Upload in FlashPlayer #16

@veselekov

Description

@veselekov

Hi,

I am new to GitHub. So I don't think this should go here. But I found this works for uploading an image using flashplayer as opposed to AIR (i.e. no 'fileReference.uploadUnencoded()'). Useful if you are doing a web based app and don't wanna use java etc. Might wanna add this to the Upload example code section.

var appID:String = "YOUR-APP-ID";

public function uploadFile(): void {
			var fileRef: FileReference = new FileReference();
			var fileFilter: FileFilter = new FileFilter("Images", "*.jpg");
			fileRef.addEventListener(Event.SELECT, fileSelected)
			fileRef.browse([fileFilter]);
			function fileSelected(event: Event): void {
				fileRef.addEventListener(Event.COMPLETE, onFileLoaded);
				fileRef.addEventListener(IOErrorEvent.IO_ERROR, ioError);
				fileRef.addEventListener(ProgressEvent.PROGRESS, onProgress);
				fileRef.load();
			}
			function onFileLoaded(event: Event): void {
				var fr: FileReference = event.target as FileReference;
				var data: ByteArray = fr["data"];
				fileRef.removeEventListener(Event.COMPLETE, onFileLoaded);
				fileRef.removeEventListener(IOErrorEvent.IO_ERROR, ioError);
				fileRef.removeEventListener(ProgressEvent.PROGRESS, onProgress);

				var request: URLRequest = new URLRequest("https://firebasestorage.googleapis.com/v0/b/"+appID+".appspot.com/o/ArtWorks%2F" + fr.name);
				request.method = URLRequestMethod.POST;
				request.data = data;

				var loader: URLLoader = new URLLoader();
				loader.addEventListener(flash.events.Event.COMPLETE, uploadComplete);
				loader.addEventListener(flash.events.IOErrorEvent.IO_ERROR, ioError);
				loader.load(request);
			}
			
			function uploadComplete(event:Event):void{
				trace("upload complete")
			}

			function ioError(event: IOErrorEvent): void {
				trace("ioError")
			}
			function onProgress(event: ProgressEvent): void {
				trace(event.bytesLoaded + "/" + event.bytesTotal);
			}
		}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions