我正在创建一个教育应用程序,并希望我的用户能够选择他们想要的包,并只将该包下载到设备。所以基本上,我的应用程序有一个"数据"夹。如果用户选择了一个"信号和系统",我的应用程序应该将其从http服务器下载到设备上的私人位置,然后我的应用可以将数据呈现给用户。 (可下载内容为20-30 MB,所以我想将其下载到外部存储,如果可能的话,或者内部但是应该是应用程序的私有内容)
现在,我浏览了谷歌文档,似乎数据可以保存在内部存储器或外部存储器中。我不明白的是外部记忆是什么意思? 如果我使用外部存储编写应用程序代码,并且用户选择在内部存储器中安装我的应用程序,是否必须重写代码才能从内部存储器中获取数据?
编辑1
我得到了答案,但现在我有一个不同的问题。如果我想在APK中放入一些文件,我会将它们导入Android Studio Assets文件夹。但是,现在我想把一些文件放在APK之外但用APK包装。即我的文件应与APK一起下载到私人存储位置。我怎么做?如何为此设置Android Studio?
答案 0 :(得分:0)
Android有3大类内存:
您可以选择内部和外部来存储您的应用数据。
默认情况下,您的应用将安装在内部存储器上,用户可以将其移至外部存储设备上。
任何这些都不会影响您的数据存储实现,您无需重写任何代码。
还可以查看this。
<强>更新强>
要回答您的更新问题,您可以在资源中保留所有必需的文件,它将与您的APK捆绑在一起。
main / assets /
这是空的。您可以使用它来存储原始资产文件。 您在此处保存的文件将按原样编译为.apk文件,并且 原始文件名被保留。您可以在中导航此目录 与使用URI和读取文件的典型文件系统相同的方式 使用AssetManager的字节流。例如,这是一个很好的 纹理和游戏数据的位置。