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

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

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

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

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

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

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

【问题讨论】:

  • @karthikeyan 感谢您的回复,请问有没有可能?
  • @karthikeyan 我担心越狱设备?他们可以提取视频文件吗?
  • 为什么不正确加密文件,然后如果他们访问它就不能对它们做任何事情?
  • @BencePattogato 因为加密后很难播放视频。

标签: ios security


【解决方案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 设备上安装。
猜你喜欢
  • 1970-01-01
  • 2021-10-18
  • 2017-07-22
  • 2017-03-24
  • 2016-09-19
  • 2017-08-04
  • 1970-01-01
  • 1970-01-01
  • 2017-01-23
相关资源
最近更新 更多