添加,更新有效,但如何使用iOS Google表格API v4进行追加?

时间:2016-09-14 23:15:12

标签: ios google-api google-sheets-api

我一直在尝试实施一个基本的iOS应用,它会在事件发生时写入Google电子表格。 我从这里开始使用Google开发文档:https://developers.google.com/sheets/quickstart/ios并且能够在添加数据和更新数据之前完成工作。 但是,我无法找到附加数据(插入新行)的方法。

我已使用[self.service fetchObjectByUpdatingObject:...方法完成上述操作,但[self.service fetchObjectByInsertingObject:...方法拒绝在同一行上工作。

参考文档为此目的讨论了append方法,但我找不到在iOS中调用它的方法。我已经尝试了GTLService类中提供给我们的几乎所有Fetch方法。

更新:我正在寻找iOS对应程序来执行以下操作,如在Java中完成的那样:service.spreadsheets().values().append

非常感谢有关如何将数据附加到电子表格的任何指导。

PS :我也尝试过标准的REST方法但总是返回Unauthenticated错误。所以,我放弃了,并采取了上述方法,其中包括添加,更新。 如果有人需要我发布添加,更新实施的代码,请告诉我。

1 个答案:

答案 0 :(得分:7)

Sheets API iOS Quickstart已更新为使用较新版本的Objective-C客户端库,其中包含Google表格API的生成类。使用该新库,您可以使用以下代码进行追加调用:

    let spreadsheetId = "..."
    let range = "Sheet1"
    let valueRange = GTLRSheets_ValueRange.init();
    valueRange.values = [
        ["Hello", "World"]
    ]
   let query = GTLRSheetsQuery_SpreadsheetsValuesAppend
            .query(withObject: valueRange, spreadsheetId:spreadsheetId, range:range)
        query.valueInputOption = "USER_ENTERED"
        service.executeQuery(query,
                             delegate: self,
                             didFinish: #selector(displayResultWithTicket(ticket:finishedWithObject:error:)))