外部ストレージにデータを保存して遊ぶアプリを作成していますが、シミュレーターでコードが動作しません。
String state = Environment.getExternalStorageState();
返されるのstateは常に ですremoved。以下は、sd カードのサイズを 200M に設定した私のシミュレーター構成です。そのため、sd カードはシミュレーターにマウントする必要があると思います。

なぜなのかご存知ですか?
外部ストレージにデータを保存して遊ぶアプリを作成していますが、シミュレーターでコードが動作しません。
String state = Environment.getExternalStorageState();
返されるのstateは常に ですremoved。以下は、sd カードのサイズを 200M に設定した私のシミュレーター構成です。そのため、sd カードはシミュレーターにマウントする必要があると思います。

なぜなのかご存知ですか?
初期化をテストしました。まあ、それは動作します。あなたが試してみたいかもしれないいくつかのこと:
onCreateへの呼び出しの後に次のコードを使用しますsuper.onCreate。外部ストレージへの実際のパスの状態を示すトーストが表示されます。
Toast.makeText(
this,
Environment.getExternalStorageState() + ", " +
Environment.getExternalStorageDirectory(),
Toast.LENGTH_LONG)
.show();
PC に SD カード ファイル用の書き込み可能なスペースがあることを確認します。オペレーティング システムによっては、このファイルは<home>/.android/avd/<device name>.avd/sdcard.img