Загрузка файлов на Google Drive с помощью Swift 3 - PullRequest
0 голосов
/ 22 мая 2018

Я уже создал папки и извлек их в своем приложении с помощью swift 3 Теперь я пытаюсь загрузить аудиофайлы в выбранную папку, я начал пробовать с изображением, и вот код, который я написал:

let folderId: String = folders[indexPath.row].folderId
    let metadata = GTLRDrive_File.init()
    metadata.name = "weather"
    metadata.mimeType = "application/vnd.google-apps.photo"
    metadata.parents = [folderId]

    guard let filePath = Bundle.main.path(forResource: "weather", ofType: "png") else {
        return
    }
    guard let fileData = FileManager.default.contents(atPath: filePath) else {

        return
    }

    print("result: \(fileData.count) bytes")


    let imageFromPath = UIImage(contentsOfFile: filePath)!
    selectedimg.image = imageFromPath

    let uploadParameters = GTLRUploadParameters(data: fileData , mimeType: "image/png")
    uploadParameters.shouldUploadWithSingleRequest = true
    let query = GTLRDriveQuery_FilesCreate.query(withObject: metadata, uploadParameters: uploadParameters)
    query.fields = "id"
    self.service.executeQuery(query, completionHandler: {(ticket:GTLRServiceTicket, object:Any?, error:Error?) in
        if error == nil {
            //  print("File ID \(files.identifier)")
        }
        else {
            print("An error occurred: \(error)")
        }
    })

Но когда я проверяю свой диск, изображение является просто пустым документом Google, 0 байтов.Я попытался показать изображение из filePath и напечатал размер fileData, и все в порядке.Я хотел бы помочь с этой проблемой и как ее исправить.Заранее спасибо

Обновление Мне удалось это решить, я только что удалил эту строку

metadata.mimeType = "application/vnd.google-apps.photo"
...