使用Xcode 6 beta 6通过parse.com设置我的应用程序。我按照here列出的说明进行了操作,并将框架导入我的应用程序并添加了桥接标题等。然后我将我的应用程序密钥添加到我的应用程序代理中
func application(application: UIApplication!, didFinishLaunchingWithOptions launchOptions: NSDictionary!) -> Bool {
// Override point for customization after application launch.
Parse.setApplicationId("app key here", clientKey: "client key here")
var testObject = PFObject(className: "test")
testObject["foo"] = "bar"
testObject.saveInBackground()
return true
}
并且工作正常。我验证了测试对象是在数据浏览器中创建的,并且认为我已经设置好了。然后我开始在我的应用程序中实现登录。在我的第一个视图控制器中,我创建了一个当前用户变量,我的应用程序崩溃并出现以下错误:由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'您必须调用setApplicationId:clientKey:on Parse以配置Parse。'
我确实设置了它,它在我的app委托中起作用,但由于某种原因,app委托之外的任何解析代码都会导致崩溃。我甚至在我的视图控制器中再次粘贴了测试代码,在第一行解析相关代码后它甚至没有自动完成任何内容
class HomeViewController: UITableViewController {
var testObject = PFObject(className: "test")
//this line after the first has a "expected expression error" and no parse methods get autocompleted
testObject["foo"] = "bar"
testObject.saveInBackground()
还有其他人有这个问题吗?这是xcode 6的问题吗?
答案 0 :(得分:3)
在处理另一个应用程序时,我意识到当我遇到这个问题时我做了什么。我试图初始化一个属性来存储当前用户,但我在视图之外做了加载所以它必须在应用委托调用configure parse之前调用甚至运行。在viewDidLoad中初始化它之后,而不是在声明属性时它工作正常。