在 Android 中存储数据的存储系统
我们在 Android 中采用某种形式的存储来永久保留数据(直到销毁)以供将来参考。 Android Storage System 是这些存储系统的名称。内部存储、外部存储、共享首选项、数据库和共享存储是 Android 提供的一些存储选项。但是,许多用户不确定何时使用哪种存储。因此,在本博客中,我们将了解何时使用哪个存储单元。让我们从内部存储系统开始。我们创建了几个变量来存储在开发 Android 应用程序时使用的各种数据。例如,我们可以利用一个变量来保存远程数据库中的数据,然后在整个应用程序中使用该变量。但是,这些变量是应用内存储,这意味着它们在应用运行时对您可见。当应用程序结束时,变量中的所有数据都将被擦除,您将一无所有。当您启动应用程序时,将再次创建这些变量,并且可以将新值保存在这些变量中。
1. 内部存储
当您在手机上安装应用程序时,Android 操作系统将为您提供某种形式的秘密内部存储,该应用程序可以在其中存储其私人数据。没有其他应用程序可以访问此信息。当您卸载应用程序时,与之关联的所有数据也会被删除。
要将文件保存到内部存储,您必须首先从内部目录中获取它。您可以通过调用 getFilesDir() 或 getCacheDir() 方法来做到这一点。 getFilesDir() 方法返回文件系统上创建文件的目录的绝对路径。 getCacheDir() 返回文件系统的应用程序特定缓存目录的绝对路径。
什么时候应该使用内部存储?
当您的应用程序需要一些机密数据时,可以使用内部存储。要记住的另一件事是,如果您的应用程序正在存储可能被其他应用程序使用的数据,则应避免使用内部存储,因为当您删除该应用程序时,您的所有数据都将消失,其他应用程序将永远无法访问到那个数据。例如,如果您的应用正在下载 pdf 或存储可能被其他应用使用的图像或视频,则不应使用内部存储。
2. 外置硬盘
大多数 Android 设备的内部存储空间相对较低。因此,我们将数据保存在外部存储设备上。每个人都可以访问这些存储单元,这意味着您设备的所有应用程序都可以访问它们。您还可以通过将移动设备连接到计算机来访问存储。您必须获得用户的READ EXTERNAL STORAGE权限才能访问外部存储。因此,任何具有此权限的应用程序都可以访问您应用程序的数据。
什么时候适合使用外部存储?
如果您的应用程序存储的数据可以被其他应用程序使用,您可以使用外部存储。此外,如果您的应用程序存储的文件很大,例如视频,您可以将其保存到外部存储中。即使在卸载应用程序后,您也可以使用外部存储来保留数据。
3. 使用共享首选项
如果您只有少量数据要保留并且不想使用内部存储,则可以使用共享首选项。共享首选项用于以键值格式存储数据,这意味着您将拥有一个键,并且将根据该键存储关联的数据或值。保存在共享首选项中的数据将保留在应用程序中,直到您将其从手机中删除。如果您卸载应用程序,所有共享首选项将从设备中删除。
什么时候应该使用共享偏好?
当您要存储的数据相对较少时,您可以在应用程序中使用共享首选项。在共享首选项中保存超过 100 KB 的数据并不是一个好主意。此外,如果您希望保留微小且私密的数据,您可以使用 Android 的共享首选项。
4. 使用安卓数据库
数据库是组织和保存以备将来使用的数据集合。使用数据库管理系统,您可以在数据库中存储任何类型的数据。您所要做的就是建立数据库并使用一个查询来执行所有操作,例如插入、删除和搜索。查询将被传递到数据库,该数据库将返回所需的输出。在 Android 中,SQLite 数据库是数据库的一个示例。
什么时候应该使用数据库?
当您需要跟踪结构化数据时,数据库非常有用。数据库可以保存任何类型的信息。因此,如果您的数据很大并且您想快速检索它,您可以使用数据库并将其以结构化样式存储。