斯威夫特:有啥方法可以对用户隐藏文件?

Posted

技术标签:

【中文标题】斯威夫特:有啥方法可以对用户隐藏文件?【英文标题】:Swift: Is there any way to hide files from users?斯威夫特:有什么方法可以对用户隐藏文件? 【发布时间】:2018-11-27 10:25:08 【问题描述】:

我想知道在 ios 设备中是否有可以存储视频文件的地方:

1) 用户无法在应用外找到视频文件。

2) 没有其他应用可以读取视频文件。

3) 即使是越狱设备也无法访问应用外的视频文件。

我希望访问这些视频文件的唯一方法是仅通过应用程序。

请帮我知道保存文件的位置。

【问题讨论】:

文件系统developer.apple.com/library/archive/documentation/… @karthikeyan 感谢您的回复,请问有没有可能? @karthikeyan 我担心越狱设备?他们可以提取视频文件吗? 为什么不正确加密文件,然后如果他们访问它就不能对它们做任何事情? @BencePattogato 因为加密后很难播放视频。 【参考方案1】:

首先,看看@karthikeyan 发布的链接。

https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/FileSystemProgrammingGuide/FileSystemOverview/FileSystemOverview.html

选择正确的“SearchPathDomainMask”。

let documents = try! FileManager.default.url(for: .documentDirectory, in: .localDomainMask, appropriateFor: nil, create: false)

来自苹果图书馆:

public struct SearchPathDomainMask : OptionSet 

    public init(rawValue: UInt)


    public static var userDomainMask: FileManager.SearchPathDomainMask  get  
    // user's home directory --- place to install user's personal items (~)

    public static var localDomainMask: FileManager.SearchPathDomainMask  get  
    // local to the current machine --- place to install items available to everyone on this machine (/Library)

    public static var networkDomainMask: FileManager.SearchPathDomainMask  get                                            
    // publically available location in the local area network --- place to install items available on the network (/Network)

    public static var systemDomainMask: FileManager.SearchPathDomainMask  get  
    // provided by Apple, unmodifiable (/System)

    public static var allDomainsMask: FileManager.SearchPathDomainMask  get  
    // all domains: all of the above and future items

【讨论】:

越狱设备怎么办?如何保护视频文件不受这些影响? 不,您不能保护 JailBroken 设备的视频文件。我认为有两种选择。首先是加密。其次,如果数据非常敏感或您想要保护它,则无需在 Jail Broken 设备上安装。

以上是关于斯威夫特:有啥方法可以对用户隐藏文件?的主要内容,如果未能解决你的问题,请参考以下文章

检查“是图书馆”复选框对“隐藏”有啥作用?

Linux中清除痕迹和隐藏自己-清除last login 有啥可以修改的工具也可以发一下

如何建立隐藏用户

隐藏域有啥用

Pro\E中隐藏和隐含命令有啥区别?

有啥方法可以隐藏 div 的内容而不是 div 本身?