private lazy var googleServiceStorage:GTLServiceStorage = {
var storage = GTLServiceStorage()
storage.APIKey = "AIzaSy**********m8TPCM"
storage.additionalHTTPHeaders = ["x-goog-project-id" : "159*******7"]
return storage
}()
}
public func uploadAssetToGoogle(resourcePath: String?) {
if let _resourcePath = resourcePath {
let fileHandle = NSFileHandle(forReadingAtPath: _resourcePath)
let uploadParams = GTLUploadParameters(fileHandle: fileHandle, MIMEType: "video/mov")
var storageObject = GTLStorageObject.object() as GTLStorageObject
storageObject.name = "12345678"
let query = GTLQueryStorage.queryForObjectsInsertWithObject(storageObject, bucket: "my-bucket", uploadParameters: uploadParams) as GTLQuery
var ticket = googleServiceStorage.executeQuery(query) { ticket, object, error in
if let _error = error {
println("Error upload file: \(error.localizedDescription) : \(error.localizedFailureReason)")
return
}
println("Upload succeeded")
}
ticket.uploadProgressBlock = {ticket, numberOfBytesRead, dataLength in
println("Ticket: \(ticket)")
NSLog("read %llu from %llu bytes", numberOfBytesRead, dataLength)
}
}
mediaURL type: (Metatype) - file:///Users/Michael/Library/Developer/CoreSimulator/Devices/5895B7FA-41E7-4958-84FD-2C1043CA7CD7/data/Containers/Data/Application/2DD62539-E364-4BE0-A89C-E0DD2827D74B/tmp/trim.FCE68DAD-0FC6-4E2D-8C92-37055A02DD12.MOV
Ticket: GTLServiceTicket 0x7feed4860660: {service:<GTLServiceStorage: 0x7feed2cf9d90> devKey:AIzaSyBClcLHWtXzlBHb2VbATA1xIlUO0m8TPCM fetcher:GTMHTTPUploadFetcher 0x7feed4890fb0 (https://www.googleapis.com/upload/rpc?uploadType=resumable&prettyPrint=false) }
2014-09-25 18:25:23.515 StorieBeta[14917:1971326] read 202 from 29512 bytes
Error upload file: The operation couldn’t be completed. (Login Required) : Optional("(Login Required)")
There is something I am missing, but I can't figure it out. If anyone can help me, it will save me a lot more hair.
Thanks,
Michael