向Apple提交的应用程序在本地运行与使用Parse.com后端的Apple相同

时间:2016-01-26 15:41:13

标签: ios swift parse-platform

我希望其他开发者能够在某个地方遇到过这个问题。我有一个应用程序,我一直在努力获得Apple的批准。有趣的是,在我的iPhone和iOS模拟器中本地运行时,应用程序的行为有所不同。特别是当新用户注册时,我正在检查用户是否同意应用条款和条件的标志。在Parse中,列设置为undefined,直到它们同意,然后它转到true。这在我的所有测试中都能正常工作。但在Apple,它不会也不会引发同意条款。以下是该检查的代码:

if((PFUser.currentUser()!["termsAgreed"]) != nil) {
            termsAgreed = PFUser.currentUser()!["termsAgreed"] as! Bool
            if !termsAgreed {
                self.performSegueWithIdentifier("agreeTerms", sender: nil)
            }

        }
        else {
            self.performSegueWithIdentifier("agreeTerms", sender: nil)

我做了一项新的更改,看看是否有帮助,因为当用户注册时,我会在此检查前将PFUser.currentUser()!["termsAgreed"]设置为false

我希望在苹果端强制执行条款协议条件失败,但希望得到任何体验过这样的人的反馈。

1 个答案:

答案 0 :(得分:1)

根据您的实际问题,使用力展开不被认为是非常安全的。你的代码会更加稳定:

if let termsAgreed = PFUser.currentUser()?["termsAgreed"] as? Bool where
    !termsAgreed {
       self.performSegueWithIdentifier("agreeTerms", sender: nil)
}
else {
   // proceed
}

PS:我希望语法正确 - 我手头没有IDE。