由于模糊的方法调用错误,iOS应用程序中的Built.io集成失败

时间:2017-11-15 10:08:17

标签: sdk integration built.io

我正在尝试使用Xcode 9.1和swift 4在iOS应用程序中集成built.io但由于模糊的保存调用错误而失败,尽管我只调用了这种方法,但它仍然表示模糊调用。我无法确定问题所在。 我将此link称为在iOS中集成sdk:

使用的代码是

导入UIKit 导入Contentstack import BuiltIO

类ViewController:UIViewController {

func built(){
    var builtApplication : BuiltApplication = Built.application(withAPIKey: "")
    var pc : BuiltClass = builtApplication.class(withUID: "test")
    var projectObject:BuiltObject = pc.object()

    projectObject.save { (responseType, err) in //ambiguous error here on save call
        if err != nil {
            print("Err")
        } else {
            print("Success")
        }
    }
}
override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.
}

}

enter image description here

我使用cocoapod在项目中安装了sdk。下图包含显示错误的应用程序屏幕截图。我正在使用BuiltObject类对象来调用save方法,但是当我跳转到save方法时,它会将我带到BuiltKeyStore类的方法,而我完全不明白为什么?请帮助,提前致谢

1 个答案:

答案 0 :(得分:2)

您需要将 completionBlock 作为参数传递,而不是内嵌。 试试下面的代码,适用于Swift 3.2& 4,

    let completionBlock:BuiltRequestCompletionHandler = { (responseType:BuiltResponseType, error:Error?) in
        if error != nil {
            print("Err")
        } else {
            print("Success")
        }
    }

    projectObject.save(completionBlock)

尝试一定应该有效。