如何允许用户在iOS设备中浏览/选择文件

6
我希望能够让用户在我的iOS应用程序中上传文件,就像我们在桌面应用程序中通过浏览不同的目录上传特定文件一样。我也进行了一些谷歌搜索,但没有找到可靠的解决方案。
有人说:
整个文件系统是不可用的,如果你正在运行非越狱手机。也没有文件系统浏览器控件(出于同样的原因),但是,你可以浏览用户的照片库,甚至使用UIImagePickerController拍照。
一些问题是这样的:
- iOS开发者能否查看文件系统? - 如何在iPhone SDK中列出所有文件夹及其子目录/文件?
从这些链接和其他来源得出结论,我只是困惑是否可以在按钮点击时为用户提供文件浏览选项。如果可以,那么如何实现?任何帮助将不胜感激。
如果用户点击“浏览”按钮,则应该显示列表。

enter image description here


“某人”可能是正确的,我们没有任何授权或API允许文件或系统树变得可访问,因为在iPhone中并不存在这样的东西。 - D-eptdeveloper
但是那个图片来自于Android。该操作系统具有特定的功能,可以实现这种应用程序间通信。在iOS中,您的应用程序必须实现所需的功能。 - allprog
@allprog 是的,这张图片是我正在开发的安卓应用程序的截图。我想在iOS版本中实现相同的浏览文件功能,因此为了更好地理解,我在这里上传了这张图片。 - iShwar
你找到这个问题的解决方案了吗? - user3441799
@Tommy 直到今天我都没有找到任何可靠的解决方案来实现这个功能,今天我又遇到了同样的需求并开始谷歌搜索... - iShwar
4个回答

7

iPhone应用被沙盒化。这意味着你只能访问AppBundle内的文件/文件夹(例如Documents、Cache等)。这就是上述URL所建议的内容。你只能从/向这些文件夹上传/下载数据。

如果你的手机已越狱,情况会有所不同。不过我们不深入讨论此方面。

可以查看以下链接:

Apple iOS Environment 中的The App Sandbox


4
没有针对此目的的标准控件,但是使用您引用的帖子中提到的方法可以轻松地填充表视图。请记住,这将允许您查看应用程序沙盒中的文件。您无法访问其他应用程序的文件。

或者,您可以使用像ios_file_browseriOS-File-Browser这样的开源库。它们提供用户界面,并且您也可以查看其实现。


2

0

我是FileExplorer控件的作者,它是iOS的文件浏览器。它可以让您以用户友好的方式浏览放置在沙盒内的文件和目录。

以下是我的控件的一些特点:

  1. 如果需要,可以选择文件或/和目录
  2. 如果需要,可以删除文件或/和目录
  3. 内置搜索功能
  4. 查看音频、视频、图像和PDF文件。
  5. 可以添加对任何文件类型的支持。

您可以在这里找到我的控件。


Augustyniak:谢谢你的回答,但我想允许用户浏览根目录,而不仅仅是浏览应用程序包内的文件!! - iShwar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接