2016-07-28 2 views
2

В моем текущем приложении я пытаюсь загрузить файл .text на Google Drive с помощью Google SDK for iOS. Но проблема возникает каждый раз, когда я получил сообщение об ошибке в своем Log как Insufficient Permission, так что, если кто-либо столкнулся с этим или подумал об этом типе ошибок, любезно помогите мне.Загрузка файла на диск Google с помощью iOS sdk

Вот мой код,

 GTLDriveFile *file = [GTLDriveFile object]; 
     file.descriptionProperty = @"Uploaded from the iOS app."; 
     file.mimeType = @"text/*"; 
     [email protected]"MyTextFile"; 
     NSString *filePath = [[NSBundle mainBundle] pathForResource:@"myTestFile" ofType:@"txt"]; 

     GTLUploadParameters *uploadParameters = [GTLUploadParameters uploadParametersWithFileURL:[NSURL URLWithString:filePath] MIMEType:file.mimeType]; 


     GTLQueryDrive *query = [GTLQueryDrive queryForFilesCreateWithObject:file uploadParameters:uploadParameters]; 

     [self.service executeQuery:query completionHandler:^(GTLServiceTicket *ticket, id object, NSError *error) { 
      if (error) { 
       NSLog(@"Error: %@", error); 
      }else{ 

      } 
     }]; 

Log печати при выполнении этого действия,

данные неожиданного ответа (загрузки на неправильный URL?) { "Ошибка" : {«код»: 403, «сообщение»: «Недостаточное разрешение», «данные»: [{«домен»: «глобальный», «причина»: «недостаточные полномочия», «сообщение»: «Недостаточное разрешение»}]} , "id": "gtl_3"}

Преждевременное угасание: загрузить-статус: "окончательное" место: (нуль)

+0

Пожалуйста, перейдите по этой ссылке https://developers.google.com/ drive/ios/quickstart – Abha

+0

Также попробуйте https://developers.google.com/drive/ios/devguide/files – Abha

ответ

0

Я решить эту проблему

Первый шаг

изменить ваш простор для [kGTLAuthScopeDriveFile]

но после первого шага у меня такая же ошибка 403

, потому что мое приложение в моем телефоне есть сфера [kGTLAuthScopeDriveMetadataReadonly]

Второй шаг

сбросить мое приложение или построить в другом тренажере

Я думаю, что первый Auth ключевая цепь, используя область видимости только для чтения была существовала так Безразлично Не записывайте файл на привод Google

после изменения объема и повторного авторизации затем он работает

, если вы измените значение kKeychainItemName «s к другому, то может повторно авторизацию снова новой области

Google говорит, что в Quickstart учебнике

// If modifying these scopes, delete your previously saved credentials by 
// resetting the iOS simulator or uninstall the app. 
// private let scopes = [kGTLAuthScopeDriveFile] 
Смежные вопросы