Я пытаюсь загрузить несколько строк с сайта parse.com внутри виджета Центра уведомлений.
Поэтому мне сначала нужно войти в систему для анализа. Сначала я загружаю учетные данные, которые сохраняются из самого приложения в NSUserDefaults
(я знаю об аспекте безопасности). Этот шаг работает нормально, но когда я выполняю следующий код, виджет говорит, что загрузка данных невозможна.
func signUserIn(username: String, password: String) {
PFUser.logInWithUsernameInBackground(username, password:password) {
(user: PFUser!, error: NSError!) -> Void in
if (user != nil) {
SMKeychainService.saveToken(password)
var defaults = NSUserDefaults(suiteName: "group.xxx.xxx")
defaults.setObject(username, forKey: "UsernameKey")
defaults.synchronize()
self.delegate?.signedIn!(true)
} else {
self.delegate?.signedIn!(false)
}
}
}
Пробовал ли кто-нибудь из вас загружать данные с parse.com внутрь виджета и как вы это делали. Я даже не могу загрузить данные, потому что, как я уже упоминал, виджет вылетает при входе пользователя в систему.
Само приложение не имеет проблем с входом в систему для анализа и загрузки данных.
Я решил проблему
Я не реализовал Parse.setApplicationId("xxx", clientKey: "xxx")
, теперь реализовал в viewDidLoad
и код работает!
NSUserDefaults
работает,SMKeychainService
тоже основан наNSuserDefaults
. Я также попробовал вызов метода и делегата, ведущего назад, без кода Parse, поэтому это может быть только методPFUser.logInWithUsernameInBackground:
. - person smudis   schedule 17.10.2014