Музыка, хранящаяся на внешней SD-карте, удаляется из списков воспроизведения при перезагрузке.

Итак, я получаю очень неприятную проблему с моим телефоном, когда любые файлы .mp3, хранящиеся на моей внешней SD-карте, удаляются из своих списков воспроизведения всякий раз, когда я перезагружаю свой телефон. Любая музыка, хранящаяся во внутренней памяти телефона, по-прежнему остается в плейлистах, но все остальное из них удаляется. Я просмотрел журналы SQL Media Store и нашел это:

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

По сути, я очистил данные Media Store, чтобы сбросить базу данных мультимедиа Android, а затем перезагрузился. При первой перезагрузке все мои плейлисты отображались отлично (музыка с внешней SD и музыка с внутренней SD). Это дало 3 строки журнала над выделенной строкой на изображении. Затем я снова перезагрузил свой телефон, и снова вся музыка на внешней SD-карте была стерта из моих плейлистов. Перезапуск дал следующие строки журнала, включая выделенную строку. Похоже, что происходит то, что Android удаляет любые ссылки на файлы, хранящиеся на моем внешнем SD, из базы данных Media Store при перезагрузке, затем он повторно сканирует при запуске телефона, но создает списки воспроизведения ДО того, как сканирует внешний SD на наличие мультимедиа, поэтому просто считает, что в плейлистах много отсутствующих медиафайлов, и удаляет любые ссылки на музыку с SD-карты.

Так что, в конце концов, я все еще могу получить доступ ко всей музыке, хранящейся на моем внешнем SD, и мой телефон прекрасно ее видит, просто она никогда не сохраняется ни в каких плейлистах. Если у кого-то есть способ исправить это или вообще какой-либо совет, я был бы очень признателен! У меня недостаточно места на внутренней SD для хранения всей моей музыки.

Спасибо!

(Я использую Google Play Edition Galaxy S4 под управлением Android 5.1)

Ответы (1)

После дальнейших экспериментов я сделал прорыв. В конечном счете, все это происходит из-за того, что Android Media Scanner сканирует внутреннюю SD-карту на наличие носителя при запуске. Когда он находит файлы списка воспроизведения, он пытается импортировать их в системную базу данных, но поскольку SD-карта требует времени для монтирования при запуске и временно не читается некоторое время во время загрузки, когда он пытается вернуться по пути к музыке на SD карту, он не может найти музыку, так как SD-карта все еще монтируется. Вместо того, чтобы, знаете ли, делать что-то логическое, например, ждать монтирования SD, он просто стирает записи из списка воспроизведения. Итак, чтобы обойти этот глупый недостаток системы, вам нужно переместить все свои плейлисты (файлы .m3u/.pla/etc) на внешнюю SD-карту.

Перемещая файлы списков воспроизведения на SD-карту, он гарантирует, что они когда-либо будут прочитаны только после того, как SD-карта завершит установку, а затем сканер медиа попытается сканировать внешнюю SD для носителей. В этот момент он находит плейлисты и следует путям их mp3-файлов обратно в окончательно загруженную папку «Музыка» на внешнем SD.