Отключение MTP/PTP/всех USB вещей, кроме зарядки

Есть ли способ отключить все функции USB, кроме зарядки? Я действительно не использую MTP или PTP и хотел бы отключить его, если это возможно.

Ответы (3)

Перейдите в «Настройки» → «Хранилище» и коснитесь дополнительного меню в правом верхнем углу (на устройстве с физической клавишей меню вам может потребоваться нажать ее вместо этого). Это должно вызвать пункт меню с надписью «USB-подключение к компьютеру»:

введите описание изображения здесь

Нажмите на него, и он предоставит вам список возможных режимов подключения. Снимите галочки со всего, что вы не собираетесь использовать. На моем N5/CM11 на этой странице есть только две опции: MTP и PTP. Снятие обоих флажков приводит к тому, что телефон просто заряжается при подключении к ПК. Я видел другие, у которых есть явная опция «Только зарядка», но я считаю, что это нестандартно.

Также обратите внимание, что PTP должен быть отмечен для того, чтобы была предложена модемная связь либо через USB, либо через Bluetooth.
@andybjackson Это совсем не мой опыт. Я никогда не использую PTP, но время от времени использую USB-модем. Также кажется странным, что модем через Bluetooth (беспроводной протокол) каким-то образом зависит от PTP.
Если я сниму оба флажка, ADB также перестанет работать (LG P880 под управлением CM11/Android 4.4). Если один из них отмечен галочкой, я всегда получаю два всплывающих окна на моем ПК при подключении кабеля (с просьбой смонтировать хранилище MTP). Сводит меня с ума. Хотелось бы, чтобы было явное «только зарядка», как это было в «старых версиях».
@Izzy Фактически они добавили «только зарядку» в AOSP в 6.0 и сделали его значением по умолчанию: androidcentral.com/inside-marshmallow-usb-connection-options
На самом деле я был бы доволен этим значением по умолчанию (если оно работает, см. «Устройства adb» не дает «разрешения» при использовании только для зарядки ), но я согласен, что пользователь должен иметь возможность выбрать то, что подходит ему лучше всего.
Нажав на это, просто скажите «USB сейчас отключен». Повторный щелчок говорит то же самое.
На Samsung Galaxy S5 этот параметр находится в меню «Настройки» → «Система» → «Параметры разработчика» → «Отладка» → «Сеть» → «Конфигурация USB». Измените его с «MTP (протокол передачи мультимедиа)» на «Зарядка».

Самый совместимый с устройством способ отключить все — запустить эту команду при запуске или установить это в вашем build.prop:

setprop persist.sys.usb.config none

что эквивалентно только зарядке на всех устройствах Android.

Это также отключает adb. Если вы используете adb регулярно, то:

setprop persist.sys.usb.config adb

разрешит adb, когда параметры разработчика включены / проверены. Если вы не часто используете ADB, я бы не рекомендовал его, потому что настройка adbзаставляет мой S5 по-прежнему распознаваться в диспетчере устройств, даже когда он заблокирован.

Чтобы восстановить первоначальную функциональность,

setprop persist.sys.usb.config mtp,ptp,adb

поддерживает все протоколы USB.

Надеюсь, это поможет любому найти ответ в Google.

Вы проверили, что эти команды будут работать без root-доступа?
Люди, у которых есть кастомное рекавери, могут применить измененное build.propбез рута. Тем, у кого заблокированы загрузчики и нет восстановления, потребуются права root.
На Android 5.1.1 (CyanogenOS 12 на Wileyfox Swift) с помощью setprop persist.sys.usb.config adbletshow . Играл со всеми комбинациями - никак не получается "только зарядка + адб". Должен быть "x,adb" (где x=mtp или ptp) для работы вообще. Для восстановления в терминале мне понадобился рут. Меню уведомлений просто стало серым, когда я попытался повторно включить MTP оттуда. adb devices???????????? no permissions
даже если он не при запуске, он работает и даже сохраняется между перезагрузками. (из-за persist.xxx.yyy.zzz спасибо
  • нажмите 5 раз на НАСТРОЙКИ> О ТЕЛЕФОНЕ> НОМЕР МОДЕЛИ

  • затем ОПЦИИ РАЗРАБОТЧИКА будут добавлены в основные настройки (внизу). Войдите туда и выберите НАСТРОЙКИ USB > ЗАРЯДКА|MTP.

( Источник )