2015-11-05 31 views
15

在安卓6.0,MTP no longer works automatically如何在啓用調試的Android 6.0設備上更輕鬆地切換MTP?

通過USB端口連接的設備現在默認設置爲僅可充電模式。要通過USB連接訪問設備及其內容,用戶必須明確授予此類交互權限。如果您的應用程序支持用戶通過USB端口與設備進行交互,請考慮必須明確啓用交互。

MTP需要至少在每次插入USB電纜時重新授權,並且可能比此更頻繁(超時?)。

啓用USB調試,我發現讓MTP共享設備上工作的唯一的解決辦法是:

  • 走進設置>開發者選項
  • 向下滾動到「選擇USB配置「
  • 切換該選項的任何東西 MTP的值,如‘僅充電’(如果是在MTP現在)
  • 開關即期權的價值爲MTP
  • 刷新MTP客戶端(例如,在Ubuntu 15.04,關閉並重新打開一個顯示設備內容的窗口)

加重當你試圖用設備對外部文件工作存儲。

有沒有一種命令行方式來讓MTP進入,而不是編寫一個UIAutomator「測試」來自動執行上述過程?或者,還有其他方式讓MTP在沒有這種準備過程的情況下工作嗎?

+9

即使@CommonsWare被問到的問題上左右。;-) –

+0

@DhavalPatel,告訴你如何這是一個問題。我最初認爲這是一個棉花糖的錯誤。多麼痛苦。 – Sabuncu

回答

10

在棉花糖(6.0和6.0.1),這是不可能沒有某種超能力的:-(

adb shell svc usb setFunction mtp 

拋出java.lang.SecurityException: Neither user 2000 nor current process has android.permission.MANAGE_USB.MANAGE_USBsignature|privileged許可。我提起這爲issue#193062,具有已投入狀態分配並標記爲缺陷25596495,它是固定的N個開發者預覽。

+0

我已經在Nexus 5X/NPC56P(即N開發者預覽#1)上測試過。有效。 – cuihtlauac