データカテゴリ
データの用途によって4つのカテゴリが挙げられている。
| カテゴリ | 用途 | ディレクトリ | バック アップ対象  | 
| Critical Data | ユーザが作成するデータ または 再作成ができないデータ  | Documents | ◯ | 
| Cached Data | 再ダウンロード または 再作成が可能なデータ  | Library/Caches | × | 
| Temporary Data | 使用期間の短い一時的な データで保存が不要なデータ  | tmp | × | 
| Offline Data | オフライン時に 利用するデータ  | Documents または Library/Private Documents かつ拡張属性付与  | ◯ | 
拡張属性 "do not backkup"
iOS5.0.1 よりファイルに 拡張属性 "do not backup" を付与することで特定のファイルを iCloud/iTunesバックアップの対象外にできる。以下は Technical Q&A からの転載。
#include <sys/xattr.h>
- (BOOL)addSkipBackupAttributeToItemAtURL:(NSURL *)URL
{
    const char* filePath = [[URL path] fileSystemRepresentation];
 
    const char* attrName = "com.apple.MobileBackup";
    u_int8_t attrValue = 1;
 
    int result = setxattr(filePath, attrName, &attrValue, sizeof(attrValue), 0, 0);
    return result == 0;
}拡張属性が認識されるのは iOS5.0.1以降。それ以前は機能しない(つまりバックアップされる)。参考情報
setxattr(2) Mac OS X Developer Tools Manual Page
setxattr関数のマニュアル



Responses
Leave a Response