我正在使用CRM Mobile SDK访问iOS中的MS Dynamics CRM,它由Microsoft提供,位于Objective-C中。我想在Swift中使用这个sdk。我使用swiftify将示例Objective-C代码转换为Swift,但它给出了错误。
无法调用" loginWithEndpoint'使用类型'的参数列表(String,completion:(ADAuthenticationResult) - > Void)'
调用函数是
- (void)loginWithEndpoint:(NSString *)serverURL completion:(ADAuthenticationCallback)completion;
这样称呼
CRMClient.sharedClient().loginWithEndpoint(host, completion: {(result: ADAuthenticationResult) -> Void in
if result.error {
// TODO: Handle the error
}
else {
// TODO: Do some work
}
})
根据示例函数将在objective-c中调用
CRMClient *client = [CRMClient sharedClient];
[client loginWithEndpoint:@"https://mydomain.crm.dynamics.com" completion:^(ADAuthenticationResult *result) {
if (result.error) {
// TODO: Handle the error
}
else {
// TODO: Do some work
}
}];
答案 0 :(得分:2)
CRM SDK中存在错误。 SDK在objective-c中正常运行但在swift中没有正确运行,并且在将xcode更新为7.1.1并且更改了swift 2.1错误之后。
决定使用soap身份验证,因为它易于使用且不需要azure帐户连接到crm