【发布时间】:2016-02-06 08:17:27
【问题描述】:
在 Android 6.0 中,MTP no longer works automatically:
现在,通过 USB 端口连接的设备默认设置为仅充电模式。要通过 USB 连接访问设备及其内容,用户必须明确授予此类交互的权限。如果您的应用程序支持通过 USB 端口与设备进行用户交互,请考虑必须显式启用交互。
至少每次插入 USB 数据线时都需要重新授权 MTP,而且可能比那更频繁(超时?)。
启用 USB 调试后,我发现让 MTP 共享在设备上工作的唯一解决方案是:
- 进入设置>开发者选项
- 向下滚动到“选择 USB 配置”
- 将该选项的值切换为除 MTP 之外的任何值,例如“仅充电”(如果它现在在 MTP 上)
- 将该选项的值切换为 MTP
- 刷新您的 MTP 客户端(例如,在 Ubuntu 15.04 上,关闭并重新打开显示设备内容的窗口)
当您尝试使用外部存储设备上的文件时,这会加重。
除了编写一个 UIAutomator“测试”来自动执行上述过程之外,是否有一种命令行方式可以让 MTP 运行?或者,有没有其他方法可以让 MTP 在没有这种准备过程的情况下工作?
【问题讨论】:
-
甚至@CommonsWare 也问了关于 SO 的问题。 ;-)
-
@DhavalPatel 这告诉你这是一个多么烦人的问题。我最初认为这是 Marshmallow 中的一个错误。多么痛苦。
标签: android android-6.0-marshmallow