0

Xoom 没有可用的 SD 插槽,因此 Moto 决定将对外部存储的调用重新路由到内部存储:

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

上面的行返回到 Xoom 上的内部存储和我的 Droid 上的 SD 卡的路径。

但是,我无法在 Xoom 上写入此路径。好像它是写保护的,或者我没有权限。

此代码在我的 Droid 的 SD 卡上创建一个文件夹,但不在我的 Xoom 的存储上:

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 结尾),因为在通往结束路径的途中丢失的目录会自动创建。

你确定你的 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 回答