exc_bad_access函数底部的代码= 2,地址= 0x38

问题描述:

这非常简单。我试图执行一个触发数据预填充的函数。但是,在该功能结束时,它会死亡。我正在AppDelegate文件中执行所有这些。exc_bad_access函数底部的代码= 2,地址= 0x38

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: NSDictionary?) -> Bool { 
    // Override point for customization after application launch. 

    let initialize = Initialize() 

    // Check to see if the application ID exists 
    if (NSUserDefaults.standardUserDefaults().objectForKey("appId") == nil){ 
     // Refresh the info 
     self.preload() 
     println("Data Preload Completed") 

    } else { 
     // running anyways to trigger the error. 
     self.preload() 
     println("Data Already Preloaded") 
    } 

    return true 
} 


func preload()->Bool { 

    // Preload static data for the app. 
    var conditions = Conditions() 
    conditions.preloadData() 

    var imageTypes = ImageTypes() 
    imageTypes.preloadData() 

    var propertyTypes = PropertyTypes() 
    propertyTypes.preloadData() 


    //Save the appId 58AEF58E-2794-4F60-B0A6-0FAB4A943811 
    NSUserDefaults.standardUserDefaults().setObject("58AEF58E-2794-4F60-B0A6-0FAB4A943811", forKey: "appId") 
    NSUserDefaults.standardUserDefaults().synchronize() 


    println(NSUserDefaults.standardUserDefaults().dictionaryRepresentation()) 

    return true 

} 
+1

请发布堆栈跟踪。我们可以看到它崩溃的地方。 – fluidsonic 2014-10-07 17:47:28

我不知道,如果这个“的”回答这个问题,但我不得不删除所有的模拟器配置文件,并为每个设备命中[iPhone模拟器]。[复位内容&设置],然后点击“重置”按钮进行确认。我怀疑在某处我损坏了NSUserDefaults连接到的plist文件。