存储用户可访问配置文件的最佳位置

时间:2012-08-25 10:36:45

标签: android configuration preferences configuration-files

我有一个项目,包括四个不同平台的程序;所有这些都使用相同的基于XML的设置文件格式。我希望能够在应用程序之外手动修改/覆盖它。在Windows,Windows Mobile和Linux上我使用“user.home”,但在Android上没有实现别名。我只是想把它放在Downloads目录中,但感觉不对。

我不可能是唯一一个需要这种功能的人。或者这不是Android方式?任何建议都表示赞赏。

编辑:我没有设置文件一直无法使用(即SD卡被删除),它只在应用程序启动时使用。

2 个答案:

答案 0 :(得分:1)

将其存储在getExternalFilesDir()中。这仅在设备具有外部存储器时才有效。用户可以访问它。

但是,请注意以下文档中的以下内容:

  

外部文件并非总是可用:如果是,它们将会消失   用户将外部存储装载到计算机上或将其删除。见   环境中的API,用于存储状态中的信息。

答案 1 :(得分:0)

根据Android data storage documentation,您有5个选项:

  1. 共享偏好设置。默认情况下,这将使用文件/data/data/your.package.name/preferences/user_preferences.xml
  2. 内部存储。在这里,您可以使用/data/data/you.package.name/user.home
  3. 之类的内容
  4. 外部存储。与内部存储/mnt/sdcard/Android/data/your.package.name/user.home类似,但如果用户删除存储卡文件将无法访问。
  5. SQLiteDatabase。您可以将整个user.home文件存储在数据库blob中。
  6. NetworkConnection。将用户配置存储在云中。