В приложении iOS вы можете установить application.idleTimerDisabled = YES
, чтобы предотвратить автоматическую блокировку телефона.
Мне нужно сделать это в мобильном сафари для игры, такой как Doodle Jump, где пользователь может не касаться экрана в течение длительного периода времени. Есть ли документированный метод или взломать это?
(Обновление) Кажется, они делают это как-то на этом сайте http://www.uncoveryourworld.com. Посетите свой iphone, и когда вы попадете на сцену зданий/улиц с музыкой, играющей в фоновом режиме, просто оставьте свой телефон в покое. Он никогда не заснул.
(Обновление 2) Я потратил некоторое время на более пристальное внимание на то, как они могут удержать телефон от сна. Я сделал тест на болотах, и кажется, что то, как они зацикливают звук на уличной сцене, не позволяет ему заснуть. Если вы хотите протестировать это, просто поставьте простой аудиоплеер, который будет зациклен на вашей странице и нажмите кнопку воспроизведения:
<audio src="loop.mp3" onended="this.play();" controls="controls" autobuffer></audio>
Всюду, где я искал, говорят, что это невозможно, поэтому приятно видеть, что есть хоть какой-то способ сделать это, даже если немного взломать. В противном случае игра на основе браузера с игрой в стиле каракуля не была бы возможна. Таким образом, вы можете иметь петлю в своей игре/приложении, если это необходимо, или просто играть в тихий цикл.