当我上传所有联系人并询问任何普通朋友时,它只返回null。但我有共同的朋友使用数字,如果没有朋友,它只是返回
[]
但现在它的回报为零。 (这是以下代码的输出)
总联系人:10,上传成功:10
朋友:数字ID:无
我如何获得数字用户?什么是我的代码中的错误(以前成功返回普通数字用户)
在viewDidLoad()
中 let digits = Digits.sharedInstance().session()
self.uploadDigitsContacts(digits!)
然后是功能: -
private func uploadDigitsContacts(session: DGTSession) {
let digitsContacts = DGTContacts(userSession: session)
digitsContacts.startContactsUploadWithCompletion { result, error in
if result != nil {
// The result object tells you how many of the contacts were uploaded.
print("Total contacts: \(result.totalContacts), uploaded successfully: \(result.numberOfUploadedContacts)")
self.findDigitsFriends(session)
}
}
}
private func findDigitsFriends(session: DGTSession) {
let digitsSession = Digits.sharedInstance().session()
let digitsContacts = DGTContacts(userSession: digitsSession)
// looking up friends happens in batches. Pass nil as cursor to get the first batch.
digitsContacts.lookupContactMatchesWithCursor(nil) { (matches, nextCursor, error) -> Void in
// If nextCursor is not nil, you can continue to call lookupContactMatchesWithCursor: to retrieve even more friends.
// Matches contain instances of DGTUser. Use DGTUser's userId to lookup users in your own database.
print("Friends:")
print("Digits ID: \(matches)")
for digitsUser in matches {
print("Digits ID: \(digitsUser.userID)")
}
}
}
答案 0 :(得分:0)
找到解决方案!!!当您使用相同的模拟器通过使用不同的数字上传联系人时,会发生此错误。因此,请尝试使用以下方法删除该电话号码中的所有联系人: -
let userSession = Digits.sharedInstance().session()
let contacts = DGTContacts(userSession: userSession)
contacts.deleteAllUploadedContactsWithCompletion { error in
// Inspect error to determine if delete succeeded.
}
然后从该设备注销: -
Digits.sharedInstance().logOut()
然后再次登录Digit并再次上传联系人,并请求任何使用该应用的朋友。再次登录数字时,不要忘记删除deleteAllUploadedContactWithCompletion。