1

这里的用例是将 Nexus S 部署为企业平台的一部分。手机用户不应该能够启用 USB 调试——但管理员应该可以,使用密码或类似的东西。

似乎这应该可以通过部署 Settings.apk=com.android.settings 和/或 SettingsProvider.apk=com.android.providers.settings 的自定义版本来实现?有没有更轻量级的选择?

4

1 回答 1

1

不确定这是否是与开发相关的问题。无论如何,我会这样做:

  1. 从 /system/app 获取 Settings.apk
  2. 将 Settings.apk 重命名为 Settings.zip
  3. 现在获取 ./res/xml/development_prefs.xml (这里是这个 xml 的示例)
  4. 您需要将此 development_prefs.xml 从二进制转换为文本(您需要自己弄清楚,我自己从未尝试过)。
  5. 使用键“enable_adb”删除首选项。
  6. 将 development_prefs.xml 转换回二进制格式。
  7. 将其复制到 Settings.zip 存档中
  8. 将 Settings.zip 重命名为 Settings.apk
  9. 将此修改后的 Settings.zip 复制到您的手机

附加说明:有许多格式为“xml-[locale]”的文件夹,如“xml-ru”、“xml-zh-TW”等。您也应该修改这些文件夹中的所有 development_prefs.xml。或者作为另一种选择,您可以完全删除所有这些文件夹,前提是您不需要多语言支持。

如果您的管理员需要启用 adb,他们可以将原始 Settings.apk 复制到手机上。或者您可以单独使用此功能编写小型 .apk,然后将其与修改后的 Settings.apk 并排安装。

于 2011-04-20T22:43:26.353 回答