14216


OSXの場合

[code]

    let paths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)
    let realmPath = (paths[0] as NSString).stringByAppendingPathComponent("data.realm")
    
[/code]

で指定できるが、iOSの場合標準はどこになるのですか？


CC BY-SA 3.0
2015-08-09T10:48:10.960
14209
2015-08-09T16:13:15.263
10845
question
swift realm
Swift2でRealmのデータベースをどこに置けばいいのですか？（iOSの場合）


アプリケーションが使うディレクトリ構成は少し減っているだけでOS Xとほぼ変わりません。  
その中でも特にiOSでは`Documents`ディレクトリか、`Library/Caches/`ディレクトリを使います。

プログラムから指定する方法もOS Xと同じです。

[code]

    NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)
    // => Documents/
    
    NSSearchPathForDirectoriesInDomains(.CachesDirectory, .UserDomainMask, true)
    // => Librery/Cashes
    
[/code]

`Documents`ディレクトリは標準でiCloudバックアップの対象になり、`Library/Caches/`ディレクトリはそうではないなどの違いがあります。

詳しくはアップルのリファレンスをご覧ください。

<https://developer.apple.com/library/ios/documentation/FileManagement/Conceptual/FileSystemProgrammingGuide/FileSystemOverview/FileSystemOverview.html#//apple_ref/doc/uid/TP40010672-CH2-SW1>

<https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/PerformanceTips/PerformanceTips.html#//apple_ref/doc/uid/TP40007072-CH7-SW17>


CC BY-SA 3.0
2015-08-09T16:13:15.263
14216
2015-08-09T16:13:15.263
5519
14209
answer