0

Xoom には有効な SD スロットがないため、Moto は外部ストレージへの呼び出しを内部ストレージに再ルーティングすることにしました。

String path = Environment.getExternalStorageDirectory().getPath() + "/newfolder/";

上記の行は、Xoom の内部ストレージへのパスと、私の Droid の SD カードへのパスを返します。

ただし、Xoom でこのパスへの書き込みに問題があります。書き込み保護されているか、権限がないかのようです。

このコードは、Xoom のストレージではなく、Droid の SD カードにフォルダーを作成します。

File file = new File(path);
file.mkdir();

Xoomは外部ストレージであると「偽造」しているだけなので、アプリには「内部ストレージ」権限も必要かもしれないと考えていましたが、それは修正されませんでした.

4

2 に答える 2

1

私の xoom では、次のように動作します。

    private File path;
    path = new File(Environment.getExternalStorageDirectory().toString() + "/audio");
    path.mkdirs();

mkdirs (末尾が s の場合)。これは、end-path に向かう途中で欠落しているディレクトリが自動的に作成されるためです。

あなたの AndroidManifest にこれがありますか?

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
于 2011-06-03T13:54:32.667 に答える
0

Android 2.3.4を実行しているNexus Sで同じ問題が発生していました.stkのコードをいじった後、フォルダーを作成できました。

最終的なコードは次のとおりです。

File root = new File(Environment.getExternalStorageDirectory().toString()+"//MyFolder");
root.mkdirs();

stk のコードで「/audio」を「//audio」に置き換えるだけでうまくいきました。

タグの下の AndroidManifest に書き込み権限が必要です。

 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
于 2011-09-07T07:41:42.293 に答える