如何在NSDocumentsDirectory中隐藏文件夹并禁止通过iTunes和iCloud进行备份

伊万·季特科夫(Ivan Titkov)

我在NSDocumentDirectory中创建了私人文件夹,我想将其隐藏在iTunes中并不允许备份。

在此问题中,如何在ios中隐藏在“文档目录”中创建的文件夹?人们建议保存在私人目录中。

但是根据苹果文档https://developer.apple.com/library/mac/documentation/FileManagement/Conceptual/FileSystemProgrammingGuide/FileSystemOverview/FileSystemOverview.html,这还不行

Application_Home / Library /您不应将此目录用于用户数据文件。

在iTunes11之前,此解决方案适用于我

我可以为iCloud添加“不备份”的“文档目录”吗?

但现在我在iTunes中看到包含私人文档的文​​件夹。

有人可以帮我吗?

萨特什

要在iTunes文件共享中隐藏您的应用,可以No在info.plist中将以下键设置为

应用程序支持iTunes文件共享

或者,在您的文件名/目录之前添加在Documents目录中,并在其中添加文件.以隐藏它而不禁用iTunes File Sharing。例如.folderName

使用此代码可防止iCloud备份(从“阻止备份到iCloud”)是否正确?以下代码是否正确?

- (BOOL)addSkipBackupAttributeToItemAtPath:(NSString *)filePathString {
    NSURL *fileURL = [NSURL fileURLWithPath:filePathString];

    assert([[NSFileManager defaultManager] fileExistsAtPath: [fileURL path]]);

    NSError *error = nil;

    BOOL success = [fileURL setResourceValue:[NSNumber numberWithBool: YES]
                                  forKey: NSURLIsExcludedFromBackupKey
                                 error: &error];
    return success;
}

并且为了防止设备锁定时从XCode Organizer备份应用程序,请使用此代码段

//************************************************************************
// Method for making files and folders secure
//************************************************************************
+ (void)makeItemAtPathSecure:(NSString *)path
{
    NSError *securingFilesError;

    NSFileManager *manager=[NSFileManager defaultManager];

    NSDictionary *attrs = [manager attributesOfItemAtPath:path error:&securingFilesError];


    if(![[attrs objectForKey:NSFileProtectionKey] isEqual:NSFileProtectionComplete])
    {

        if(![manager setAttributes:[NSDictionary dictionaryWithObject:NSFileProtectionComplete                                                                       forKey:NSFileProtectionKey] ofItemAtPath:path error:&securingFilesError])
        {
            NSLog(@"Problem in securing files: %@",[securingFilesError localizedDescription]);
        }
    }

    else
    {
        NSLog(@"Problem in securing files: %@",[securingFilesError localizedDescription]);

    }

}

要在iTunes中有选择地隐藏文件夹,请尝试使用来重命名该文件夹。在此之前,例如folderName应该是.folderName

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Ubuntuphone Aquaris E 4.5如何通过MTP查看主文件夹中的隐藏文件?

如何通过使用终端或脚本隐藏文件夹中的所有文件

如何在Nautilus中获取文件夹大小以包含隐藏文件(点文件)?

如何在Windows 10中使用密码保护和隐藏文件夹内容?

如何在Windows中深深隐藏文件/文件夹

如何在Nautilus中隐藏文件和文件夹?

如何在 Ubuntu 上的文件管理器 (Nautilus) 中显示隐藏文件夹?

如何从链接中隐藏文件夹名称

如何在GitHub存储库中删除黑色隐藏文件夹

如何在Android应用程序中创建隐藏文件夹?

.gitignore 中的隐藏文件夹

如何使用C#创建,隐藏和取消隐藏文件夹?

如何在单个调用中同时获取隐藏文件和非隐藏文件

如何在Android SD卡中创建隐藏文件夹并将内容推送到其中

如何仅通过“备份和同步”同步Google云端硬盘中的特定文件夹?

AppleScript:如何获取文件夹中没有隐藏文件的文件?

PowerShell脚本从隐藏文件夹中删除文件

删除文件夹中的隐藏文件

.bat和robocopy错误-隐藏文件夹

如何在Linux中chmod和chown隐藏文件?

如何从受密码保护的RAR文件中隐藏文件夹结构?

PHP和.htaccess-在URL中隐藏文件夹

如何在文件夹中创建ms访问的备份?

如何使用Java隐藏文件夹

Gitkraken:隐藏文件夹中的所有分支

Qt:在getSaveFileName中隐藏文件夹

如何删除目录中除最新的 10 个隐藏文件夹之外的所有文件夹

绝对隐藏文件或文件夹

如何在Atom中隐藏文件