3

我正在创建应用程序来在外部存储上存储数据,但是代码在我的模拟器上不起作用,

String state = Environment.getExternalStorageState();

返回state的总是removed,下面是我的模拟器配置,我把sd卡的大小设置为200M,所以我认为sd卡应该安装在模拟器上。 在此处输入图像描述

你知道为什么吗?

4

1 回答 1

0

我已经测试了你的初始化。嗯,它有效。您可能想尝试几件事:

  • 在带有工作 sdcard 的实际设备上测试您的应用程序。您的代码是否为您提供了正确的状态?这意味着,它不是代码,而是真正的模拟器。
  • onCreate调用super.onCreate. 它会给你一个 toast 显示状态的实际路径到外部存储。

    Toast.makeText(
        this,
        Environment.getExternalStorageState() + ", " +
        Environment.getExternalStorageDirectory(),
        Toast.LENGTH_LONG)
        .show();
    
  • 确保您的 PC 有 sd 卡文件的可写空间。根据操作系统,此文件可以在您的<home>/.android/avd/<device name>.avd/sdcard.img

  • 升级到最新的 Android SDK
于 2013-09-28T17:17:46.127 回答