Забыл перезапустить сайдбар после обновления? Не беда. Или как одна флешка спасает нервную систему владельца Dongfeng


Магия Dongfeng: почему это вообще работает
update под именем custom_rep.sh.План из пяти пунктов (или как мы учим систему хорошим манерам)
#!/system/bin/sh
log -p e -t DFM "=== DFM-Sidebar Auto-Start Script ==="
log -p e -t DFM "Начинаем операцию по спасению вашего сайдбара"
# ============================================================
# ВАРИАНТ 1: Вежливая просьба (через полное имя Activity)
# ============================================================
log -p e -t DFM "Попытка 1: Запуск через полное имя Activity"
am start -n com.example.dfmsidebar/.MainActivity
sleep 1
# ============================================================
# ВАРИАНТ 2: Чуть более настойчивая просьба
# ============================================================
log -p e -t DFM "Попытка 2: Запуск через пакет и activity"
am start -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -n com.example.dfmsidebar/.MainActivity
sleep 1
# ============================================================
# ВАРИАНТ 3: Универсальный подход (для особо одаренных систем)
# ============================================================
log -p e -t DFM "Попытка 3: Универсальный запуск"
am start -a android.intent.action.MAIN -c android.intent.category.LAUNCHER com.example.dfmsidebar
sleep 1
# ============================================================
# ВАРИАНТ 4: Прямой звонок сервису (без посредников)
# ============================================================
log -p e -t DFM "Попытка 4: Прямой запуск SidebarService"
am startservice -n com.example.dfmsidebar/.SidebarService
sleep 1
# ============================================================
# ВАРИАНТ 5: Тяжелая артиллерия (Broadcast как при загрузке)
# ============================================================
log -p e -t DFM "Попытка 5: Broadcast intent"
am broadcast -a android.intent.action.BOOT_COMPLETED -p com.example.dfmsidebar
# ============================================================
# ПРОВЕРКА: А оно вообще работает?
# ============================================================
log -p e -t DFM "Проверяем, жив ли сервис..."
SERVICE_CHECK=$(dumpsys activity services com.example.dfmsidebar/.SidebarService | grep "ServiceRecord")
if [ -n "$SERVICE_CHECK" ]; then
log -p e -t DFM "✅ SidebarService работает! Можно выдыхать."
else
log -p e -t DFM "❌ Сервис мертв. Применяем метод кунг-фу: monkey"
# Фолбэк: запускаем через monkey (системная утилита, эмулирующая нажатия)
monkey -p com.example.dfmsidebar -c android.intent.category.LAUNCHER 1
fi
log -p e -t DFM "=== Операция завершена ==="
exit 0
Инструкция для тех, кто «и так всё знает» (но всё равно подглядывает)
- Берете любую USB-флешку (да, ту самую, которая вечно валяется в бардачке). На всякий случай убедитесь, что она отформатирована в FAT32. Компьютеры не любят креатива в файловых системах.
- Создаете на ней папку с именем
update(именно так, с маленькой буквы. Регистр имеет значение). - Внутри папки
updateсоздаете текстовый файл и называете егоcustom_rep.sh. - Открываете его любым текстовым редактором (хоть стандартным «Блокнотом») и вставляете туда код, приведенный выше. Сохраняете.
- Вставляете флешку в USB-порт магнитолы.
- Магнитола увидит файл, задумается на пару секунд (или не задумается, она же Dongfeng) и выполнит скрипт.

💡 Хотите обсудить материал?
Присоединяйтесь к нашему Telegram-каналу:
https://t.me/aeolusshinegsНажмите кнопку ниже — и вы сразу попадёте в чат с комментариями