【问题标题】:do all android devices have non-removable external storage?所有安卓设备都有不可移动的外部存储吗?
【发布时间】:2013-01-10 20:49:46
【问题描述】:

这个 link 在这里描述了不可移动的外部存储。 所有的安卓设备都有不可移动的外部存储吗?

【问题讨论】:

    标签: android android-sdcard


    【解决方案1】:

    不,这完全取决于制造商。 Nexus S、Galaxy Nexus 和 Nexus 4 等设备具有不可移动的外部存储,而 Optimus One 等一些设备只有可移动的外部存储。有些设备甚至可能有两个外部存储,一个是板载内存芯片上的分区,另一个是 SD 卡。

    编辑

    正如 CommonsWare 在 cmets 中指出的,就标准 Android SDK 而言,您的设备上只有一个外部存储(您可以通过 Environment.getExternalStorageDirectory() 获得)。正如文档所述,如果存在多个外部存储,这将返回主外部存储:

    在具有多个“外部”存储目录(例如 安全应用程序存储和可挂载共享存储),此目录 表示用户将交互的“主要”外部存储 与。

    【讨论】:

    • 从技术上讲,至少通过 Android 4.2,从 Android SDK 的角度和“外部存储”一词的定义来看,一台设备将只有一个外部存储位置。设备制造商可以选择支持制造商可以存储数据的附加位置(例如,除了板载外部存储之外的 SD 卡插槽),但这取决于设备制造商,而不是Android SDK 目前支持。
    • @CommonsWare 你是对的,像往常一样:P 我会编辑我的答案以反映这一点。
    • 感谢您的回答 Raghav。
    • 现在我还有一个问题,我正在将我的数据写入一个文件(可以是公开的)。我给出的文件路径是 Environment.getExternalStorageDirectory() 。尽管这似乎可以在我的 nexus 平板电脑上使用,但通常是其他一些设备,它会给我错误:写入文件 /mnt/sdcard/my_directory 时出错。你能建议我解决这个问题吗?我也尝试过使用内部存储,但似乎找不到我的应用写入的数据。
    • @user1698550 这是一个单独的问题,您应该为此打开另一个问题。此外,您将无法使用文件管理器等查看内部存储中的数据,因为它是您的应用程序私有的。
    【解决方案2】:

    从那个链接

    由于外部存储可能不可用(例如,当用户将存储安装到 PC 或移除了提供外部存储的 SD 卡时)您应始终在访问之前验证该卷是否可用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-02
      • 1970-01-01
      • 2017-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多