问题:
本人一直有使用金蝶公司的随手记APP作为个人的理财工具,最新版提供多种渠道对数据进行备份和导出,这种功能十分讨好我这种用户,可是最近一次刷机的数据恢复,使我遇上了大麻烦,无论是从网盘下载的,还是本地本分的,均不能恢复!
幸好,随手记作为一款成熟的APP,日志系统必然是有的,可是却没有错误反馈功能。作为开发者,阅览log后,发现是由于一文件不能正常读取而导致数据不能恢复!
具体的日志详见:
2012-12-05 11:14:00 7.5.0 SettingServiceImpl > java.io.FileNotFoundException: /storage/sdcard0/.mymoney/backup/默认账套_20121203111301/Photos/20121121184921.jpeg: open failed: ENOENT (No such file or directory) at libcore.io.IoBridge.open(IoBridge.java:406) at java.io.FileOutputStream.<init>(FileOutputStream.java:88) at java.io.FileOutputStream.<init>(FileOutputStream.java:73) at lq.a(Unknown Source) at bj.e(Unknown Source) at com.mymoney.ui.setting.SettingBackUpActivity.a(Unknown Source) at com.mymoney.ui.setting.SettingBackUpActivity.a(Unknown Source) at abf.a(Unknown Source) at abf.doInBackground(Unknown Source) at android.os.AsyncTask$2.call(AsyncTask.java:264) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305) at java.util.concurrent.FutureTask.run(FutureTask.java:137) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569) at java.lang.Thread.run(Thread.java:856) Caused by: libcore.io.ErrnoException: open failed: ENOENT (No such file or directory) at libcore.io.Posix.open(Native Method) at libcore.io.BlockGuardOs.open(BlockGuardOs.java:110) at libcore.io.IoBridge.open(IoBridge.java:390) ... 14 more
就是这个文件/storage/sdcard0/.mymoney/backup/默认账套_20121203111301/Photos/20121121184921.jpeg
就是前写日子附在已记录上的附件。经过检查路径也没有问题,可是...
分析:
在这里有必要说明一下,那文件是在cm 10系统下记录的,由于种种原因又刷成了官方的4.04系统,就是在4.04下面恢复出现了问题。由于身边还有一平板电脑,对于/storage/sdcard0/这种路径的描述见惯不怪,这是android系统对管理多种外置的存储设备而作一种处理,举个例子,一般平板的内置控件比较大,一般称为内置空间,/storage/sdcard0/ 指向的就是内置空间。假如平板还支持外置SD卡进行扩容,插上卡后,/storage/sdcard1/ 就是指第一个接入的外置存储设备,如此类推。
但是在4.0之前,系统是这样子描述的SD卡的/storage/sdcard/
问题到此就十分清楚了,由于随手记保存的完整的路径,但是由于android的系统版本不统一,碎片化严重,对SD卡应用的管理也是相对不同的。
所以,为了给避免用户带来不必要的麻烦,作为一名开发者,强烈建议使用相对路径来进行管理,以免损坏用户的数据!!!
相关推荐
四、注意事项 1. 在从读卡器中拔除存储卡之前应先操作“弹出”(Eject) ,否则可能会丢失数据。 2. 如果电脑设置了显示隐藏文件,还可以看到隐藏的系统文件,如下图所示,这些系统文件是不能删除的,也不允许对存储...
以下是一些关于SD卡与单片机交互的重要注意事项: 1. **初始化过程**:初始化SD卡时,首先要发送CMD0命令,这一步对于所有类型的SD卡是通用的,目的是将卡置于空闲状态。在CMD0之后,通常会接ACMD41(对于SPI模式)...
在安卓系统中,SD卡(Secure Digital Card)是设备扩展存储空间的重要方式,尤其是在设备内置存储有限的情况下。本文将深入探讨“安卓SD卡文件管理更新信息相关-判断双SD卡CheckDoubleSDCard.rar”这个主题,它涉及...
SD卡作为一种广泛应用于数码相机、手机、平板电脑和其他便携式设备的数据存储媒介,有时可能会遇到各种问题,如无法读取、写入错误或者数据损坏等。这时,我们可能需要对SD卡进行格式化或低级格式化来解决这些问题。...
【标题】:“一款很好用的sd卡量产工具...对于普通用户而言,了解基本的使用方法和注意事项,可以提高SD卡的稳定性和使用寿命。而对专业用户来说,深入理解这些工具的高级功能,可以帮助他们在更复杂的场景中解决问题。
SD卡修复工具是一种专门针对SD存储卡出现故障时使用的实用程序,主要解决死卡、呆卡以及无法格式化的常见问题。这些状况通常是由于硬件故障、软件冲突、病毒攻击或者不当操作导致的。以下是对SD卡修复工具及其相关...
总之,SD卡在安卓系统中起着至关重要的作用,它不仅扩展了存储空间,还提供了数据管理和安全保护等功能。了解和掌握SD卡的正确使用和管理方法,能够帮助用户更好地利用这一资源,提升设备的使用体验。
下面将详细解读6RA80装置使用存储卡进行参数备份和恢复的步骤和注意事项。 首先,需要了解的是CUD(SINAMICSDCM的控制单元)管理三个存储器区域:易失存储器(RAM),非易失存储器(ROM)和可选购的移动式存储卡。...
在Android系统中,管理和操作文件,尤其是涉及到SD卡(外置和内置存储卡)的文件操作,是开发者经常面临的一项任务。这篇资料主要探讨的是如何在Android应用中获取SD卡的路径以及计算其存储大小。以下是一些关键知识...
`本源码使用帮助.txt`可能包含了关于如何编译和运行此应用的指导,以及任何特定的注意事项。例如,如何解决依赖问题、如何调试代码、如何自定义配置等。 `更多源码打包下载.url`则可能指向一个链接,提供更多的...
### S7300下载注意事项 #### 知识点一:装载存储器与外插存储卡的区别 在西门子S7-300系列PLC(可编程逻辑控制器)中,存在两种主要的存储区域:装载存储器(Load Memory)和外插存储卡(External Memory Card)。 - ...
### Android内部存储与SD卡存储详解 #### 一、Android内部存储概述 在Android开发过程中,数据存储是一项非常重要的功能。对于大多数应用来说,选择合适的数据存储方式是至关重要的。Android提供了多种数据存储的...
在Windows 10操作系统中,将SD卡或U盘识别为本地磁盘是一种常见的设置,以便用户能够更方便地访问和管理存储设备上的数据。这种功能通常通过“虚拟磁盘服务”(Virtual Disk Service)或者“简易卷”(Simple Volume...
4. **下载说明.htm**:这个文件可能是关于如何下载和使用SD卡修复工具的指南,可能包含软件安装步骤、注意事项、兼容性信息以及使用教程等内容。 5. **数据安全与预防措施**:在使用SD卡修复工具之前,用户应备份...
### STM32在SPI模式下读写SD卡的知识...通过详细的初始化流程和读写操作,STM32可以有效地管理和访问SD卡中的数据。在实践中,开发者需要注意硬件连接的正确性以及软件设计的合理性,以确保数据读写的准确性和可靠性。
SD卡协议资料包含了一系列关于Secure Digital (SD) 卡及其通信协议的重要文档,这些文档对于理解SD卡的工作原理、设计嵌入式系统或移动设备、以及优化存储解决方案至关重要。以下是这些PDF文件的主要知识点: 1. **...
**SD卡分区是Android用户尤其是开发者经常需要进行的一项操作,以优化存储空间的利用和管理。本教程将向您介绍如何使用"Partition Wizard"这款工具对SD卡进行分区,并提供必要的教程指导。** **一、SD卡分区的重要...
SD卡作为一种广泛应用于移动设备、数码相机和其他便携式设备的存储介质,有时可能会遇到各种...通过理解格式化的原理和操作流程,以及注意事项,我们可以更好地管理和维护我们的SD卡,确保数据的安全和设备的正常运行。
本文将深入探讨51单片机如何读写SD卡,以及这一过程中的关键技术和注意事项。 首先,要让51单片机与SD卡通信,我们需要一个硬件接口,通常是SPI(Serial Peripheral Interface)或SPI变种。SPI是一种同步串行通信...