Skip to content

Image Upload in FlashPlayer #16

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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions