Итак, я могу читать информацию из своей базы данных, когда (в симуляторе) я вошел в свой iCloud, однако, у всех, у кого есть мое приложение, будет (очевидно) не быть. При попытке доступа к базе данных, когда Im не вошли в систему, появляется сообщение об ошибке:Быстрое чтение CloudKit, когда не вошел в систему iCloud
<CKError 0x7fc1e3416510: "Request Rate Limited" (7/2008); "This operation has been rate limited"; Retry after 3.0 seconds>
следуют:
Error Domain=NSCocoaErrorDomain Code=4097 "The operation couldn’t be completed. (Cocoa error 4097.)" (connection to service named com.apple.cloudd) UserInfo=0x7fc1e352f800 {NSDebugDescription=connection to service named com.apple.cloudd}
Код:
//VARIABLES********************************************************
@IBOutlet var questions: UILabel!
var resultsOfDB : String = ""
var indexes : [Int] = []
var counter : Int = 0
var newStr : String = ""
//*****************************************************************
@IBAction func getNewQbutton(sender: AnyObject) {
let container = CKContainer.defaultContainer()
var publicDB = container.publicCloudDatabase
let myQuery = CKQuery(recordType: "QuestionsTable", predicate: NSPredicate(value: true))
publicDB.performQuery(myQuery, inZoneWithID: nil){
results, error in
if error != nil {
println(error)
}
else
{
dispatch_async(dispatch_get_main_queue(), {() -> Void in
self.resultsOfDB = results.description
//for each character in resultsOfDB
for character in self.resultsOfDB{
if(character == "\""){
self.indexes.append(self.counter)
}
self.counter++
}
self.newStr = self.resultsOfDB.substringWithRange(Range<String.Index>(start: advance(self.resultsOfDB.startIndex, self.indexes[0] + 1), end: advance(self.resultsOfDB.endIndex, -(self.counter - self.indexes[1]))))
self.questions.text = self.newStr
})
}
}
}
Кто-нибудь знает, как кто-то может прочитать в моей базе данных, когда они не вошли в мою учетную запись iCloud? Благодаря!
Пожалуйста, покажите нам свой код. – Christian
Хорошо, я сделал! Я думал/думаю, что это может быть проблема установки, то есть я неправильно установил базу данных неправильно или что-то в этом роде, поэтому я не был уверен, нужен ли код или нет! – CS8800
по умолчанию права чтения устанавливаются для каждого из типа recordType в вашей публичной базе данных. Пользователь не должен войти в систему, чтобы запросить эти записи. Им нужно войти в свою учетную запись iCloud, если они хотят записывать данные. –