Как RSS-лента сообщает приложению о новом выпуске

Внутри ленты важны не только ссылки. Каждый выпуск обычно представлен отдельной записью с названием, описанием, датой публикации и адресом аудиофайла. Такой структурированный текстовый формат позволяет приложению понять, где заканчивается информация об одном эпизоде и начинается следующая. Адрес аудио — это указатель на файл, а не сам звук внутри ленты.

Когда пользователь подписывается на подкаст, приложение сохраняет адрес его ленты и время от времени запрашивает свежую версию. Затем оно сравнивает записи с теми, которые уже показывало. Если появляется новая, выпуск можно отобразить в списке и, в зависимости от настроек, загрузить или воспроизвести по сети.

Почему адрес выпуска имеет значение

Лента и аудиофайл могут находиться на разных серверах. Это удобно: автор обновляет список выпусков, а крупный файл звука раздают отдельно, не заставляя приложение каждый раз скачивать его вместе с лентой. Сам файл может быть тяжелым, поэтому для прослушивания достаточно сначала получить из RSS его адрес и сведения о выпуске.

Если адрес файла изменился или стал недоступен, запись о выпуске все еще может отображаться, но воспроизвести его не получится. А если лента обновлена корректно, приложения обнаружат новую запись при очередной проверке — без отдельного сообщения каждому подписчику. В этом и состоит практическая сила RSS: один небольшой список связывает описание эпизода с местом, откуда можно получить звук.