爱思助手

为什么 iPhone 不能像 Windows 一样管理文件?

iOS 独特的沙盒机制不支持提供人们广义理解中的「完整文件管理系统」,在 Apple 开发框架中,提供了一套完善的文件管理 api,它功能强大到 iOS 操作中遇到的所有问题。


Q:那么根据 api 开发一套文件管理系统可行吗?


当然可行,但实际问题是没有权限访问所有文件,仅能访问沙盒内的文件。


在 iOS「沙盒」机制下,每个 app 都是一个独立的整体,互不相干。与 Android 系统不同,iOS 应用无法干预影响其他应用,保证了系统的封闭性、安全性。


Q:如果执意访问其他文件需要怎么做?


目前只有「越狱」一种方式可以提供完整的文件管理系统。「越狱」行为会取得 iOS 全部的控制权限,完全打破沙盒机制,Cydia 中仍然存在一些不错的文件管理器。不过需要明确「越狱」行为对于设备具有极高的风险,而且随着苹果近年来加大封堵漏洞力度,高版本 iOS「越狱」难度已经非常高。


Q:外部导入 iOS 的文件应该如何编辑查看?


我们举个「将 『.txt』文档导入 iOS 后应该如何查看?」的例子


「.txt」文档实际上是文件包(Package),查看文件需要对应的解码器(解包过程),在 Windows 系统自带的「记事本」就是解包工具(应用)。


而在 iPhone 上其实很简单,首先需要通过 iTunes 同步、Wi-Fi、AirDrop 等方式将「.txt」文件导入设备中,使用对应的 app 运行即可,从更广义的角度可以理解为 windows 系统下的「打开方式」概念。这个功能可以使用户使用支持此格式的 app 运行外部文件。在 iOS 系统中,每个软件都有不同的沙盒,为了解决文件散乱的问题,在 iOS 11 中,加入了「文件」应用,可以创建文件夹,管理文件。


为什么 iPhone 不能像 Windows 一样管理文件?


在 Win 系统中,多种文件可以放置在同一个文件夹内,使用不同的软件运行。


在 iOS 系统中,文件只能储存在对应应用沙盒的中,比如「.doc」文件储存在 Word 中,「.jpg」文件储存在照片中。


Q:这是 iOS 的系统缺陷吗?


这并不是系统缺陷,只是操作系统逻辑不同。很多用户熟知的 Windows、Android 以及 Symbian 其实都没有大面积应用「沙盒」机制。


很多用户首先接触的操作系统多为 Windows,已经形成了思维惯性,使用 iOS 系统时会感觉非常不习惯。其实安全性更佳的沙盒机制是大势所趋,甚至微软也正在向这个方向努力靠拢,在 Win 10「应用商店」中的部分 Metro app 已经开始应用沙盒机制。