USB MTP по умолчанию для Android 6.0

Я хотел бы, чтобы MTP был выбран по умолчанию (вместо зарядки), когда я подключаю устройство Android 6.0.x к ПК через USB-кабель. Что я должен добавить или изменить в файле build.prop моего корневого устройства, чтобы это произошло? Я знаю, что это невозможно сделать без рут-доступа, но устройство рутировано.

Это не работает. В файле persist.sys.usb.config уже есть mtp,adb при подключении USB-кабеля и по умолчанию выбрана опция «Зарядка».
У вас установлен Xposed Framework ? Если да, то этот модуль может вам подойти. ( Источник ). В качестве альтернативы посмотрите, работает ли это: как нам легче переключаться на MTP на устройстве Android 6.0 с поддержкой отладки?

Ответы (3)

Google изменил протокол USB для Marshmallow, чтобы по умолчанию он всегда заряжался.

Причина этого изменения в том, что они вернули возможность сделать внешнее хранилище (SD-карту) внутренним хранилищем. Создание нового типа хранилища под названием «Пригодное хранилище».

Изначально Google убрал возможность замены хранилищ, потому что они рассматривали это как огромную уязвимость в системе безопасности.

Приемлемое хранилище

Похоже, что для достижения вашей конечной цели вам, возможно, придется скомпилировать зефир из исходного кода. Найдите , MtpService.javaа затем с updateDisabledStateLocked()изменением mMtpDisabledна false.

MtpService.java

Хотя ваш ответ четко отвечает на вопрос (эта запрошенная функциональность невозможна), я до сих пор не понимаю, какова связь между использованием внешнего хранилища в качестве внутреннего хранилища и режимом по умолчанию для USB-подключения. Какое отношение SD-карта имеет к USB-порту?

Лучшее, что я нашел до сих пор, — это приложение с именем MTPEnabler: http://forum.xda-developers.com/android/apps-games/app-mtp-enbaler-t3263467 .

Через Developers Options это было возможно в моем телефоне. Просто иди

 Developer option > USB configuration

По умолчанию установлено значение Charging. Измените его на MTP. Попробуйте подключить USB, должно получиться.

Ты пробовал это? Это не работает, мы только хотим, чтобы это было так просто...
Это работает ровно один раз. Как только вы отключаетесь, он возвращается обратно. Примечание. OP не хотел знать, как подключиться через MTP, но как сделать это по умолчанию при подключении USB-кабеля. Предлагаемый вами подход работает до Android 5 (Lollipop), но больше не работает с Marshmallow (Android 6), о котором явно просил OP.
Яа. Он сбрасывается обратно.