Я пытаюсь добавить функцию фонового будильника -в приложение, которое разрабатываю.
Я прочитал об объекте UILocalNotification
и его использовании и знаю, что он ограничен 30 секундами звука.
Я думал запланировать несколько уведомлений (, скажем, 5 из них )с интервалом в 30 секунд, чтобы имитировать непрерывную игру, но проблема с этим подходом заключается в том, что если пользователь нажмет Close
, я не смогу отменить любое из последующих уведомлений.
Насколько я знаю, невозможно убрать или скрыть кнопку Close
без полного скрытия уведомления (, т.е. установив для свойства alertBody
значениеNil
).
Итак, я подумал, что могу использовать свойство repeatInterval
, чтобы уведомление появлялось каждые 30 секунд, но, похоже, я могу установить интервал только в одну минуту или одну секунду, и ничего между ними.
Эта функция предназначена для того, чтобы пользователь мог выбирать между музыкой и звуковыми сигналами для звука будильника; кажется, я, возможно, нашел способ сделать звуковые сигналы -, установив repeatInterval
на одну секунду, создать звуковые сигналы длительностью в одну секунду (, которые должны быть рассчитаны на точное повторение ), и использовать это как звук уведомления.
Однако для музыки этот подход ограничивает меня воспроизведением 30 секунд звука, за которыми следует пауза в 30 -секунд, затем 30 секунд звука и так далее.
Я знаю, что здесь нет простого решения, из моего чтения других сообщений и ресурсов; никакое стороннее -приложение не имеет доступа к тем же функциям, что и встроенный -будильник. Я надеюсь, что кто-то нашел обходной путь или придумал что-то действительно умное.
ОБНОВЛЕНИЕ :Я обнаружил, что repeatInterval
не помогает мне в этом случае,так как я не могу отменить повторения без запуска приложения.
На данный момент я решил не использовать уведомление в качестве будильника как такового, а изменил функцию, сделав ее напоминанием (в соответствии с тем, для чего предназначено уведомление ).
Если я придумаю способ реализовать удобную -надежную функцию оповещения в приложении, я обновлю этот пост.