android应用程序需要SD卡中的特定目录才能运行

android应用程序需要SD卡中的特定目录才能运行,android,Android,我们正在构建一个android应用程序,但是这个应用程序必须确保SD或内部存储中有一个目录树和一些文件 我想也许我可以打包这些文件,然后将它们解压缩到用户设备。 然而,我有两个问题: 1文件放在哪里?是资产还是原始文件夹 2在哪里进行检查工作?活动内部?是否需要为我的应用程序创建应用程序对象并执行此操作 谢谢 1文件放在哪里?资产还是原始文件夹 由于您可以从两个文件夹中读取文件,因此可能的差异在于读取速度和文件大小。资产中的文件是压缩的,因此它们占用的空间较少,但可能需要更多的时间来读取;虽然r

我们正在构建一个android应用程序,但是这个应用程序必须确保SD或内部存储中有一个目录树和一些文件

我想也许我可以打包这些文件,然后将它们解压缩到用户设备。
然而,我有两个问题:

1文件放在哪里?是
资产
还是
原始
文件夹

2在哪里进行检查工作?活动内部?是否需要为我的应用程序创建
应用程序
对象并执行此操作

谢谢

1文件放在哪里?资产还是原始文件夹

由于您可以从两个文件夹中读取文件,因此可能的差异在于读取速度和文件大小。资产中的文件是压缩的,因此它们占用的空间较少,但可能需要更多的时间来读取;虽然raw中的文件没有压缩,因此读取它们不需要解压缩,但它们确实会占用全部空间

2在哪里进行检查工作?活动内部?有必要吗 为我的应用程序创建应用程序对象并执行此操作

您至少需要在启动程序活动中检查它。但由于用户或其他应用程序可以随时以任何方式修改SD卡,因此最好在每次活动恢复时进行检查,也可以在每次使用之前进行检查

1文件放在哪里?资产还是原始文件夹

这取决于您要放置的文件类型。因此,您应该了解资产和原始数据之间的区别。这个类似的问题可能会对你有所帮助

2在哪里进行检查工作?活动内部?有必要吗 为我的应用程序创建应用程序对象并执行此操作

这取决于你的设计。你必须考虑表现。例如,您可以在活动恢复时执行检查作业,但这可能需要很长时间,这可能会导致糟糕的用户体验。因此,对于这种情况,最好在线程中执行检查工作,并在检查完成时向前端发送通知。或者,您可以在系统启动时在服务中执行检查作业。或者在创建活动时执行检查作业