Apple iPod Touch форум посвященный плееру

Текущее время: Пт янв 20, 2017 0:38

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
Не в сети
СообщениеДобавлено: Чт фев 19, 2009 1:12 
Аватар пользователя

Зарегистрирован: Ср ноя 26, 2008 1:13
Сообщений: 1268
Откуда: Nowhere
Репутация: 60 [ ? ]
Группа: Разработчики
Гаджет: iPod Touch 1G
Версия прошивки: 4.0
Посвящается всем маньякам, которые, подобно мне, устанавливают на свой айпод все приложения подряд :D
В один прекрасный момент плеер перестанет загружаться (у меня это случилось после 400-ого приложения).

Это происходит из-за того, что при загрузке плеера создаётся некий кэш установленных приложений. Если приложений много, то этот процесс затягивается. А в это время загруженный демон по кличке MobileWatchDog проверяет, не завис ли SpringBoard. И когда SpringBoard очень занят созданием кэша, он не отвечает вовремя и WatchDog инициирует перезагрузку девайса, вызывая Kernel Panic с причиной WD Timeout (логи этих ошибок можно найти в /private/var/logs/CrashReporter/Panics/).

WatchDog находится в /System/Library/SystemConfiguration/mobilewatchdog.bundle, этот бандл стартует при автоматической загрузке демона configd.

Если плеер стал постоянно перезагружаться сразу после включения, то можно переименовать папку бандла, загрузить плеер, он создаст кэш, потом вернуть название папки обратно и снова перезагрузить. Тогда автоперезагрузки прекратятся, но только до того момента, как будет установлено новое приложение.

Поэтому я сделал иначе - установил задержку перед запуском WatchDog-а, что позволяет дать время на создание кэша для любого количества приложений. Совсем выключить WatchDog нельзя, т.к. существует ещё железный WatchDog и если он через несколько минут (вроде 6 или 10) не обнаруживает своего программного собрата, он делает плееру рестарт :!:

Итак, что нужно для создания задержки:
1. Создать файл com.apple.configdwd.plist следующего содержания:
Код:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
   <key>Label</key>
   <string>com.apple.configdwd</string>
   <key>Program</key>
   <string>/etc/delaywd</string>
   <key>RunAtLoad</key>
   <true/>
</dict>
</plist>


Сохранить его в Unix Text кодировке и скопировать в папку на плеере /System/Library/LaunchDaemons/, установив права 0644

2. Переименовать бандл mobilewatchdog.bundle в папке /System/Library/SystemConfiguration/ на mobilewatchdog.no_bundle

3. Создать файл delaywd и кинуть в папку /etc/. Кодировка файла - Unix Text, права 0755, содержимое:
Код:
#!/bin/bash
sleep 120
/usr/sbin/configd -t /System/Library/SystemConfiguration/mobilewatchdog.no_bundle & exit


4. Перезагрузить плеер. WatchDog будет запущен на 120 секунд позже, величину можно менять как угодно, но не более 6-10 минут естественно.

З.Ы. Во всех создаваемых файлах нужно оставлять в конце перенос на новую строку

_________________
Просьба не задавать мне вопросы в личку, т.к. больше не занимаюсь iPhone/iPod Touch (причём давно)

www.appdb.ru Зеркало AppTrackr.org [crossbrowser, поиск видео]
apt.appdb.ru Мой Cydia репозиторий
faq.appdb.ru Настройка iTunnel, установка ipa/deb, интернет через USB
dev.appdb.ru QInit App и QInit Upload - Cофт для быстрой установки .ipa и .deb


Вернуться наверх
 Профиль Отправить личное сообщение  
 

Решение проблемы большого числа установленных приложений

Реклама
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Чт фев 19, 2009 8:18 
Айфономан
Аватар пользователя

Зарегистрирован: Пт ноя 28, 2008 2:46
Сообщений: 1249
Откуда: Москва
Репутация: 32 [ ? ]
Группа: Главные модераторы
Гаджет: iPad 2
Версия прошивки: 1.1.3
И нафиг это надо? Посмотреть хочу на того маньяка, кто установит больше 500 приложений и будет доолго ждать когда же девайс включится...

_________________
iPhone 3G/16Gb/4.1b + Nokia 5230/4Gb


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения:
СообщениеДобавлено: Чт фев 19, 2009 10:20 
Аватар пользователя

Зарегистрирован: Ср ноя 26, 2008 1:13
Сообщений: 1268
Откуда: Nowhere
Репутация: 60 [ ? ]
Группа: Разработчики
Гаджет: iPod Touch 1G
Версия прошивки: 4.0
GraF писал(а):
И нафиг это надо? Посмотреть хочу на того маньяка, кто установит больше 500 приложений и будет доолго ждать когда же девайс включится...

Мой девайс включается на пару минут дольше твоего, просто этого достаточно для данной проблемы.
З.Ы. И я не планирую останавливаться на 500 =)

_________________
Просьба не задавать мне вопросы в личку, т.к. больше не занимаюсь iPhone/iPod Touch (причём давно)

www.appdb.ru Зеркало AppTrackr.org [crossbrowser, поиск видео]
apt.appdb.ru Мой Cydia репозиторий
faq.appdb.ru Настройка iTunnel, установка ipa/deb, интернет через USB
dev.appdb.ru QInit App и QInit Upload - Cофт для быстрой установки .ipa и .deb


Вернуться наверх
 Профиль Отправить личное сообщение  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Найти:
Перейти:  

Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB
[ Time : 0.074s | 18 Queries | GZIP : On ]