3

外部ストレージにデータを保存して遊ぶアプリを作成していますが、シミュレーターでコードが動作しません。

String state = Environment.getExternalStorageState();

返されるのstateは常に ですremoved。以下は、sd カードのサイズを 200M に設定した私のシミュレーター構成です。そのため、sd カードはシミュレーターにマウントする必要があると思います。 ここに画像の説明を入力

なぜなのかご存知ですか?

4

1 に答える 1

0

初期化をテストしました。まあ、それは動作します。あなたが試してみたいかもしれないいくつかのこと:

  • 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

  • 最新の Android SDK にアップグレードする
于 2013-09-28T17:17:46.127 に答える