android droid3不同的SD卡文件系统?

android droid3不同的SD卡文件系统?,android,Android,我在一年前开发了一个应用程序,它只在SD卡根文件夹上写一个备份。 这很好,直到现在我才开始抱怨新的droid3确实将所有文件保存到SD卡本身的文件夹/SD卡中 现在看来我的应用程序无法处理这个问题。它确实显示“写入成功”,但用户在SD卡上的任何位置都找不到该文件,而且当应用程序尝试从SD卡的根目录读取备份时,它也找不到任何内容 这似乎是一种文件系统行为,它不符合典型的android文件系统,因此我被卡住了,因为我也没有要测试的droid3。有什么帮助或建议吗 谢谢你,克里斯 File root

我在一年前开发了一个应用程序,它只在SD卡根文件夹上写一个备份。 这很好,直到现在我才开始抱怨新的droid3确实将所有文件保存到SD卡本身的文件夹/SD卡中

现在看来我的应用程序无法处理这个问题。它确实显示“写入成功”,但用户在SD卡上的任何位置都找不到该文件,而且当应用程序尝试从SD卡的根目录读取备份时,它也找不到任何内容

这似乎是一种文件系统行为,它不符合典型的android文件系统,因此我被卡住了,因为我也没有要测试的droid3。有什么帮助或建议吗

谢谢你,克里斯

File root = Environment.getExternalStorageDirectory();
if (root.canWrite()) {
    File gpxfile = new File(root, DATABASE_TABLE + ".myd");
    FileWriter gpxwriter = new FileWriter(gpxfile);
    BufferedWriter out = new BufferedWriter(gpxwriter);
// later i write for example:
out.write("<data>\n");

我仍然认为你应该把你的代码放在上面,让每个人都看看

但是如果你想在真正的设备上测试,这里有一个地方你可以做到

我认为你可以在他们的服务上获得三个小时的免费时间,你可能必须跳转(听一个销售助理喋喋不休地说,并试图让你注册),但这是一种在实际设备上测试而不拥有该设备的方法(而且它在3g/4g网络上直播)

这里的定价令人困惑,但肯定很昂贵,免费试用应该可以让你完成你需要做的事情,我想如果你能让他们推出Droid2的话

因为他们没有展示droid 3(但他们可能有一个,只是没有列出),我打赌如果你和销售团队谈过,说,很有意思,但我看不出我对droid 3感兴趣,他们可能会在几天内安装一个

更新: 所以我在2.3.3设备上做了一些测试,认为他们的根访问可能有问题(我想我在什么地方读到了这是一种糟糕的形式),但效果很好

所以我做了更多的搜索,似乎有些设备返回mnt/sdcard作为外部存储,即使这些设备使用mnt/sdcard ext作为实际的外部SD

从我所读到的内容来看,这意味着它实际上会写入内部存储器,写入工作(如果可以这样称呼的话)而读取不工作。看


一些终端用户证实了这一点,他们说这会创建一个内部SD卡分区,虽然不清楚这是典型的行为还是由于放入以前使用过的SD卡而导致的,但他们的观点似乎各不相同,但对于内部存储容量>8GB的设备,这似乎是一个真正的问题

首先,将您的读/写代码放在一起,SD卡在每个平台的同一个位置上并不总是可访问的,因此查看您当前的操作方式可能会节省每个人的时间请参阅更新的答案,至少这是一个起点
 File root = Environment.getExternalStorageDirectory();
 if (root.canRead()) {
File gpxfile = new File(root, DATABASE_TABLE + ".myd");
FileReader gpxwriter = new FileReader(gpxfile);
BufferedReader in = new BufferedReader(gpxwriter);
while ((dummystr2 = in.readLine()) != null) 
    {
      // read data line by line
    }