Я делаю приложение для будильника. На симуляторе есть две вещи, но не на моем устройстве.(iOS Swift) Некоторые функции работают на симуляторе, но не на устройстве
1) Согласно сайту this, если для UIApplicationExitsOnSuspend установлено значение «ДА», приложение всегда должно работать, даже если устройство заблокировано (при условии, что оно находится на переднем плане). Я использовал эту информацию, чтобы убедиться, что NSTimer работает, даже если устройство заблокировано. На симуляторе, независимо от того, сколько времени проходит (даже 10+ часов), NSTimer всегда работает, и звук всегда срабатывает (даже если я блокирую экран симулятора). Когда я подключаю свое устройство iPhone к компьютеру и запускаю приложение через xcode, он тоже хорошо работает. Но проблема в том, что как только я отключу свой телефон и загружаю сохраненное приложение, иногда работает NSTimer, а иногда нет.
2) Локальные уведомления: на симуляторе местные уведомления работают хорошо, но на устройстве iPhone уведомления запускаются в случайные моменты времени, а иногда даже не срабатывают. Но на симуляторе местные уведомления срабатывают точно. Я тестировал по-разному (например, установив локальное уведомление, чтобы запустить 20 секунд после загрузки приложения, а затем выйти из приложения, чтобы он находился в фоновом режиме), но он не срабатывает в указанное время и, как я уже сказал, иногда даже не срабатывает ,
В таком случае, следует ли доверять симулятору или устройству iPhone? Может ли это быть ошибкой или это то, что я делаю неправильно?
Я не думаю, что это проблема Мэтта. В случае NSTimer он хорошо работает на моем устройстве, пока он проходит через xcode. Но когда я не запускаю xcode, то это не так ... –
Также, как и в случае локального уведомления, я получаю его в случайное время .... –
«Я не думаю, что это проблема Мэтт» I не знаю, что вы подразумеваете под этим. Вы спросили, что мне доверять, и я сказал вам ответ. Ваш тест на устройстве, запускающемся с трамплина, является окончательным тестом (и даже более окончательным, если вы делаете сборку выпуска); больше ничего. Вы можете верить мне или не верить мне, но это ответ. – matt