android mount unmount sd卡

时间:2011-08-06 16:53:03

标签: android sd-card mount unmount

我正在研究扫描SD卡的应用程序。这时,我正在使用eclipse的模拟器来测试我的android应用程序。我已经在eclipse上创建了一个用于测试目的的虚拟SD卡。

我想知道是否有任何方法可以卸载然后将sd卡安装在模拟器(eclipse)上,以便我可以测试我的应用程序,当卸载SD卡时,它应该生成一条消息等..

任何人都可以帮助我..

4 个答案:

答案 0 :(得分:6)

可以在没有外部存储的情况下启动设备,这样可以测试当您没有获得Environment.MEDIA_MOUNTED状态时会发生什么。

只需使用现有的SD卡.iso文件创建AVD。然后,重命名该文件。当您加载此AVD时,它将正常工作,但它不会加载外部存储。这使您可以测试未安装外部媒体的逻辑。

我创建了一个单独的AVD来测试无外部存储方案,但如果要在同一个上运行这两个测试,可以重命名.iso文件并重新启动模拟器。

我确实尝试过上面的umount方法,虽然它很有用(正如Torp所说,这是一个更严苛的测试),系统仍然认为SD卡已经安装,我的备用逻辑没有运行。

答案 1 :(得分:4)

嗯,我刚刚启动了一个模拟器,得到了一个带有adb shell的root shell,并开始卸载。它似乎工作得很好。
不得不在2.3.3 VM上执行umount /mnt/sdcard/.android_secure然后umount /mnt/sdcard但它似乎有效。在卸载之前检查VM上的装载是什么 当然,这是一个比从Android用户界面下载更“苛刻”的解决方案 - 有点模拟用户在不首先卸载SD卡的情况下移除SD卡 - 但它可能有助于您的测试。

答案 2 :(得分:3)

在模拟器运行时无法安装/卸载虚拟SD卡,如此处所述(re)mounting the SD card on android emulator

如果你想测试你的应用程序,我建议你找一个真正的设备。

答案 3 :(得分:0)

对不起我的无知,但为什么你不能进入Android设置菜单然后选择存储并卸载SD卡?你可以用同样的方式安装它。它在使用Eclipse调用的模拟器下工作。我的版本ADT adt-bundle-windows-x86_64-20140702