0

我一直在阅读我的文件存储位置,但我仍然不确定我应该采取什么路线。我正在编写一个存储图像和 pdf 的应用程序(总共 300MB 左右)。我希望将应用程序安装在内部存储上,然后允许用户将 pdf 和一些图像存储在其中选择的存储上。即使我的清单中有这个,是否可以允许用户只选择他们用于这些文件的存储:

android:installLocation="internalOnly" 

本质上,我想让用户在应用程序启动时选择它。

如果是,我是否只需要在应用程序中有一个标志,如果用户选择外部并且外部存储可用,有足够的空间,然后将文件保存到它。每次用户打开应用程序时,我都会检查以确保文件可用。如果用户选择内部,它将使用 openFileOutput。这一切似乎都对,这可能吗?

或者我应该只考虑让它完全在内部,因为没有这些 PDF 和图像,应用程序将无法使用。

4

1 回答 1

0

听起来您可以将 installLocation 设置如下以完全完成您想要的:

android:installLocation="preferExternal"

文档中:

如果您声明“preferExternal”,您要求将您的应用程序安装在外部存储上,但系统不保证您的应用程序将安装在外部存储上。如果外部存储已满,系统会将其安装到内部存储上。用户还可以在两个位置之间移动您的应用程序。

如果您将其设置为 internalOnly,则用户无法将应用程序从内部存储移动到外部存储,因此上述解决方案可能是您的最佳选择。

于 2013-02-13T02:50:06.473 回答