如何在Android中以编程方式关闭USB海量存储?

时间:2011-09-14 06:16:33

标签: android usb-mass-storage

我想打开/关闭Android中的USB海量存储。

我尝试了以下代码。它不起作用。任何人都可以帮助我吗?

要禁用大容量存储,我使用了它:

Settings.Secure.putInt(getcontentResolver(),Settings.Secure_MASS_STORAGE_ENABLED,0)

要启用大容量存储,我使用了它:

Settings.Secure.putInt(getcontentResolver(),Settings.Secure_MASS_STORAGE_ENABLED,1)

上面的代码不起作用。我需要传递任何意图吗?

1 个答案:

答案 0 :(得分:2)

首先,即使您在Settings.Secure.MASS_STORAGE_ENABLED中声明了WRITE_SETTINGSWRITE_SECURE_SETTINGS,也无法修改AndroidManifest.xml,因为Settings.Secure.*只能由应用修改system/app,当然,阅读操作没有限制。

其次,我搜索了整个源代码(Gingerbread和ICS)并发现当前没有使用Settings.Secure.MASS_STORAGE_ENABLED,因为Settings.Secure.ADB_ENABLED被使用,我很困惑。请谷歌告诉我为什么?将在下一个版本中实施吗?

第三,您可以通过调用:

强制关闭USB大容量存储连接
MountService.setUsbMassStorageEnabled(false);

StorageManager.disableUsbMassStorage();

但遗憾的是,这两个API都无法公开访问?!