1

我想在 Android 中打开/关闭 USB 大容量存储。

我尝试了下面的代码。它不工作。有人可以帮我吗?

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

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

为了启用大容量存储,我使用了这个:

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

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

4

1 回答 1

2

首先,Settings.Secure.MASS_STORAGE_ENABLED即使你声明了WRITE_SETTINGS和也不能修改,因为只有在 中的应用才能修改WRITE_SECURE_SETTINGS,当然读取操作没有限制。AndroidManifest.xmlSettings.Secure.*system/app

其次,我搜索了整个源代码(姜饼和ICS),发现Settings.Secure.MASS_STORAGE_ENABLED目前没有使用,自从Settings.Secure.ADB_ENABLED使用以来我很困惑。请谷歌告诉我为什么?将在下一个版本中实施?

第三,您可以通过调用强制关闭usb大容量存储连接:

MountService.setUsbMassStorageEnabled(false);

或者

StorageManager.disableUsbMassStorage();

但不幸的是,这两个 API 都不能公开访问?!

于 2012-04-14T12:55:25.420 回答