android droid3不同的sdcard文件系统?

时间:2011-07-18 18:52:08

标签: android

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

现在看起来我的应用程序无法处理。它确实说“写成功”,但用户在他们的SD卡上找不到任何文件,同时应用程序确实尝试从sdcard从root用户读取备份时它找不到任何内容。

它似乎是一个文件系统行为,不坚持典型的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");

在这里我如何阅读

 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
    }               

1 个答案:

答案 0 :(得分:0)

我仍然认为你应该把你的代码放在每个人看看评论。

但如果您想在真实设备上进行测试,那么您可以在Real Device Testing via DeviceAnywhere

进行测试。

我认为你可以获得三个免费的服务时间,你可能需要跳过箍(听一个销售助理唠叨并尝试给你注册)但这是一种在没有拥有的情况下测试实际设备的方法该设备(它存在于3g / 4g网络上)

定价令人困惑,但绝对昂贵,免费试用应该让你完成你需要做的事情我想如果你可以让他们把机器人2。

因为他们没有显示机器人3(但他们可能有一个而且它没有列出)我敢打赌,如果你和销售团队谈过并说,很有意思,但我不知道我感兴趣的是什么机器人3,他们可能会在几天内附上一个。

<强>更新 所以我在2.3.3设备上做了一些测试,认为他们可能是根访问的一些问题(我以为我读到的这是一个糟糕的形式),但它工作正常。

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

根据我的阅读,这意味着实际写入内部存储,并写入工作(如果你可以称之为),而读取则不然。见Stack Flow Similar Question/Answer

有些最终用户Droid 3 Users - See Page 2证实它创建了一个内部SD卡分区,虽然目前还不清楚这是典型的行为还是因为投入以前使用过的SD卡,但意见似乎有所不同但是他们的在具有&gt;的设备上似乎确实是一个真正的问题。 8GB内部存储。