2017-07-19 181 views
0

我在Appdelegate中指定了Relam文件「NoteData.realm」。該文件工作正常,一切都很好。但是default.realm文件是無條件創建的。default.realm文件自動生成

我不想要創建default.realm文件。

我該怎麼辦?

+0

你可以發佈你的代碼來創建領域數據庫嗎? – Bluewings

+0

這不是代碼的問題。只要應用程序啓動,該領域將生成一個default.realm文件,而不生成代碼。你知道如何阻止它嗎? –

回答

1

我不確定您是否可以停止創建該文件,但您完全可以將其替換。這是我如何使用預先填充的Realm文件而不是空的default.realm。如果您將Realm文件存儲在其他位置,則只需更改path變量即可。

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 
    let defaultPath = Realm.Configuration.defaultConfiguration.fileURL?.path 
    let path = Bundle.main.path(forResource: "default", ofType: "realm") 

    if let defaultPath = defaultPath, let bundledPath = path { 
     do { 
      try FileManager.default.copyItem(atPath: bundledPath, toPath: defaultPath) 
     } catch { 
      print("Error copying pre-populated Realm \(error)") 
     } 
    } 
    _ = try! Realm() 
    return true 
}