Изменить звук push-уведомлений
Как я могу использовать собственный звук для push-уведомлений?
Согласно моим исследованиям и прочтению, я обнаружил, что полезная нагрузка должна иметь имя файла, которое находится в комплекте приложения или в папке Library/Sounds контейнера данных приложения.
Как положить туда файл?
2 ответа
Следуйте документации Apple для подготовки собственного звукового файла для вашего приложения.
Для удаленных уведомлений в iOS вы можете указать собственный звук, который воспроизводит iOS, когда он представляет локальное или удаленное уведомление для приложения. Звуковые файлы могут находиться в основном комплекте клиентского приложения или в папке Library/Sounds в контейнере данных приложения.
Пользовательские звуки оповещения воспроизводятся системой звукового сопровождения iOS, поэтому они должны быть в одном из следующих форматов аудиоданных:
Линейный PCM MA4 (IMA/ADPCM) µLaw aLaw Вы можете упаковать аудиоданные в файл формата aiff, wav или caf. Затем в XCode добавьте звуковой файл в свой проект как нелокализованный ресурс пакета приложения или в папку Library/Sounds вашего контейнера данных.
Вы можете использовать инструмент afconvert для преобразования звуков. Например, чтобы преобразовать 16-разрядный линейный системный звук PCM Submarine.aiff в звук IMA4 в файле CAF, используйте следующую команду в приложении "Терминал":
afconvert /System/Library/Sounds/Submarine.aiff ~ / Desktop / sub.caf -d ima4 -f caff -v Вы можете проверить звук, чтобы определить его формат данных, открыв его в QuickTime Player и выбрав "Показать Инспектор фильмов" в "Фильме" меню.
Пользовательские звуки должны быть менее 30 секунд при воспроизведении. Если пользовательский звук превышает это ограничение, вместо него воспроизводится системный звук по умолчанию.
После того, как вы создали файл, проще всего поместить его в комплект приложений.
Когда вы отправляете push-уведомление, просто добавьте имя файла в полезную нагрузку JSON. Пример:
{
"aps" : {
"alert" : "You got your emails.",
"badge" : 9,
"sound" : "bingbong.aiff"
}
}
Это оно! Вам не нужно делать ничего особенного в коде приложения.
Редактировать:
Пожалуйста, поместите файл в ваш проектный пакет (т.е. в иерархию проекта) и Copy items if needed
опция, выбранная при перетаскивании. Заштрихованная часть имеет название проекта.
Администратор вашего сервера отправит вам имя звука в уведомлении. Полезная нагрузка будет выглядеть так
{
aps =
{
alert = "notification message";
sound = "example.caf";
};
}
Вам необходимо добавить звуковой файл в комплект приложения. И формат должен быть.caf. Чтобы преобразовать ваш звуковой файл в.caf, попробуйте запустить эту команду в терминале.
afconvert -f caff -d aacl@22050 -c 1 sound.aiff soundFileName.caf
Файл сохраняется на рабочем столе. Теперь перетащите файл в свой проект. Затем выберите этап сборки в целях.
Проверьте, существует ли ваш звуковой файл в разделе "Копировать ресурсы комплекта". Если нет, нажмите кнопку +, чтобы добавить свой звуковой файл. Имя звука в полезной нагрузке должно совпадать с именем вашего звукового файла.
Теперь все готово для воспроизведения звука уведомлений.