Выключение смартфона при отключении зарядки
Автоматическое включение телефона при подаче питания
и еще страшновато, если внесу изменения и оно ошибочное(как подстраховаться) может есть спец проги тестирования, ИЛИ просто поможет СБРОС К ЗАВОДСКИМ НАСТРОЙКАМ.Есть "спец проги" для бэкапа и последующего восстановления. И они вам очень скоро понадобятся, как я полагаю, потому что
Для начала идите в тему своего девайса и узнайте, как, в случае чего, восстанавливать аппарат.
P.S. А для включения по подаче питания, варианты такие:
1) емнип, можно собрать новое ядро, что совсем не тривиальная задача.
2) девайсы на процессоре RockChip (RK3066, RK3188. ) включаются так "из коробки".
3) реле, которое "нажмёт кнопку" при подаче питания.
Спасибо за ответ.
можно поподробнее: 2) девайсы на процессоре RockChip (RK3066, RK3188. ) включаются так "из коробки".
что означает: включается "из коробки"?
Проверил на выключенном устройстве, при подаче энергии высвечивается ЛОГОТИП DNS, потом показывается индикатор заряда. Полноценного включения не происходит.
остается надежда (то что возможно я смогу сделать сам) найти файлик "загрузчика" который запускает появлении ЛОГОТИПА и в него добавить строку на полное включение смартфона.
можешь подсказать программку для редактирования системных файлов андроида.
Самому не удалось найти файлик в котором можно внести изменения для автоматического включения смартфона.
буду благодарен за помощь, огромное спасибо.
Самому не удалось найти файлик в котором можно внести изменения для автоматического включения смартфона.а что на счет вот этого варианта?
2) девайсы на процессоре RockChip (RK3066, RK3188. ) включаются так "из коробки".
Проверил на выключенном устройстве, при подаче энергии высвечивается ЛОГОТИП DNS, потом показывается индикатор заряда. Полноценного включения не происходит.
может я чтот неверно делаю?
lunjan,
Если еще актуально:
adb reboot bootloader
boot.img распаковать смог, есть папка рамдиск, в ней sbin и тут лежит healthd. Подскажите пожалуйста, как (чем) этот файл отредактировать? Сам файл распаковывается зипом, там есть файл .rodata, вот в нем и лежит весть код анимации батареи
/sys/class/power_supply/battery/charging_enabled <4>charger: android charging is disabled, exit! .
1. Как отредактировать и собрать healthd? Подскажите, в какую хоть сторону гуглить?
ПС - в папке рамдиск, в корне, есть еще один файл, charger. В нем код прочитать блокнотом не получается, блокнот пишет вот что
Плюсую, тоже интересует возможность включения телефона при подключении зарядки.
Всё таки решил вопрос с автоматическим включением Samsung galaxy tab s 8.4 Т-705, на кастомной прошивке на базе СМ 12.1 - Pak-man 5.1.1. Думаю на любом Самсунг с Cyanogen mod будет работать. Делов на 20минут, великих знаний програмирования не требуется, постараюсь изложить всё по полкам.
ПРЕЖДЕ ВСЕГО ДЕЛАЕМ ПОЛНЫЙ БЕКАП. У меня в процессе эксперементов было столько неудач, что без бекапа можно было с ума сойти заного систему переустанавливать!
Что потребуется:
На компе.
1. Программа Android Image Kitchen (найти на 4PDA).
2.Notepad++.
3.Total Comander.
4. 7zip
На телефоне/планшете
1.Total Comander.
Действия на компе:
1. Скачиваем кастомную прошивку CM, распаковываем ее с помощью архиватора 7zip. В распакованной папке ищем фаил boot.img. Копируем его в отдельную папку. Папку лучше переименовать к примеру CM Boot.
2. Скачиваем Официальную прошивку Самсунг, распаковываем ее с помощью архиватора 7zip. В распакованной папке ищем фаил boot.img. Копируем его в отдельную папку. Папку лучше переименовать к примеру Samsung Boot.
on property:ro.bootmode=charger
wait /dev/block/platform/dw_mmc.0/by-name/EFS
check_fs /dev/block/platform/dw_mmc.0/by-name/EFS ext4
mount ext4 /dev/block/platform/dw_mmc.0/by-name/EFS /efs nosuid nodev noatime noauto_da_alloc,discard,journal_async_commit
on property:ro.bootmode=charger
class_start sec-charger
service playlpm /system/bin/lpm
class sec-charger
critical
4. После того, как скопировали в буфер обмена вышеуказанные строки, папку ramdisk и файл boot.img нужно удалить из папки с программой Android Image Kitchen.
mkdir /data/log 0777
chmod 0666 /dev/log/radio
chmod 0666 /dev/log/main
chmod 0666 /dev/log/event
ifup lo
hostname localhost
domainname localdomain
service charger /sbin/healthd -c
class charger
critical
seclabel u:r:healthd:s0
6. Жмем на иконку repackimg.bat и видим появление нового ядра image-new.img. Ядро копируем на телефон/планшет, его будем ставить через рекавери. На всякий случай, нужно скопировать и нормальное не правленное ядро boot.img на случаё если девайс не загрузится.
8. Копируем файл lpm по пути system/bin, ставим разрешения 755.
9. Устанавливаем новое ядро через рекавери. Проверяем. С начала просто после установки перезагружаемся, если загрузились, то пробуем выключать девайс и подключать зарядку. Если нет, то идем в рекавери и ставим заранее скопированное "оригинальное" ядро.
ПС - возможно, не у всех будут в точности совпадать строки и даже файлы. В таком случае ищем поиском по всем файлам в рамдиске слово lpm или playlpm и подменяем. Думаю смысл понятен.
Автоматическое включение при подключении зарядки Asus ZenPad 8 (Z380KL) с прошивкой Cyanogen Mod 13
service charger /chargerclass charger
group log
seclabel u:r:healthd:s0
on property:ro.bootmode=charger
class_start sec-charger
service playlpm /system/bin/reboot
class sec-charger
critical
Способ нашел. Не нужно создавать никаких дополнительных файлов lpm, ссылаться в ядре можно на файл system/bin/reboot. Этот файл есть в прошивке по дефолту. Всё работает, при подключении зарядки планшет включается. Инструкцию подправил.
БелыйТезис,Я так понял,вы копируете в названии файла самсунга
Файл lpm можно обозвать как угодно(естественно изменив название в ядре)?
sandr2010,
Да, всё верно. И всё просто, получается делаю ссылку на файл lpm который создаю в system/bin, или на любой файл который там есть. Это может быть любой созданный файл xxxx.
БелыйТезис,
Хм,тогда,возможно,в /system/bin/ есть файлик charger - если в нем внести сразу эти изменения + сделать задержку секунд на 5-10(на всякий случай),то по идее должно сработать,без ковыряния ядра.
Asus ZenPad 8 (Z380KL) с прошивкой Cyanogen Mod 13 использую как CAR PC.
Внес изменения в ядро, создал и вставил LPM. После перезагрузки некоторое время весит логотип батарейки затем пару секунд начальная картинка загрузки Asusa и переход в TWRP. После принудительного Reboota TWRP загрузка на начальный экран СМ. И еще перестал работать MacroDroid Pro (на нем реализован макрос выключения при отключении питания).Вернул старое ядро включение (кнопкой) и выключение (макросом) востановилось. Будь добр подскажи что не так делаю.
mogolev, сложно ответить почему так получается. Как вариант проверить заного всё, что заменили и создали. lpm должен быть прописан маленькими буквами в коде и название самого файла. Но мой скромный опыт подсказывает, что перезагружается в TWRP из за неправильной упаковки ядра, у меня так было когда использовал какой то из запаковщиков. А лучше пробуйте ядро ниже, я нашел более легкий способ реализации включения (инструкцию подправил).
Вот ядро для Asus ZenPad 8 (Z380KL) с прошивкой Cyanogen Mod 13 Номер сборки Thu Apr 7 10:56:29 MSK 2016. Ставить через TWRP и никаких дополнительных файлов lpm создавать не нужно. Предварительно сохранить рабочее ядро на случай если что то пойдет не так.
тоже недавно озадачился - есть приемники интернет радио, но они все почему-то с вайфаем, почему нет с 3Г - хрен знает, может у буржуев ваще везде вайфай.
короче если хочется автономного решения - видится так, на борту роутер со свистком 3Г/4Г, стартует при включении зажигания, на поднятие линка до минуты, короче пока пристегнулся, сумки /пассажиров уложил - есть связь, приемник соответственно так же включается и цепляется к вафляю.
я пока гоняю тупо с телефоном в аукс ин - вапервых так как это телефон - его не забудешь выключить, ва втарых не нужна куча девайсов в машине, в третьих, если у вас слабая батарея - можно тело и заряжать сразу.
Там где ловится хотя бы G уже почти не заикается, ежели Н - ваще хорошо, если скатывается в Е - начинаются лаги - приходится переходить на 64 к.
а есть какое нибудь название или примерное направление где искать?
Вообще в планах максимум заиметь устройство андроид обладающее вышеописаными возможностями, плюс к ним видеовыход в NTSC (для вывода изображения на штатный моник), линейным звуковым выходом (с более менее адекватным звуком), 3Г и Блютутх и выносным тачпадом для закрепления его на панели подойдет и с виндой, но, если андроиды уже близко приблизились к этим требованиям, то виндовс устройства еще очень далеки (мне так кажется). К тому же в андроиде все как то проще (навигация, он-лайн радио и пр.). В машине есть место где можно скрытно от глаз но в тоже время удобно для водителя закрепить эту хрень (размером с навигатор) а такие вещи как навител и яндекс-карты вывести на штатный моник, и пускай он будет без управления, управление либо на экране устройства либо тачпадом.
Может уже все давно изобретено?
Сразу оговорюсь: первая часть (автовключение) темы не относится к андроидбоксам, на них, в виду отсутствия батареи, автовключение можно реализовать только аппаратно, или покупать такой, который включается при подаче питания.
Итак, суть вопроса: включить (полная загрузка) планшет/смартфон в момент подачи зарядного тока, и отключение при отключении от зарядки (важно для встроенных планшетов).
Немного теории.
Когда вы подключаете выключенный планшет/смартфон к ЗУ, происходят следующие события: просыпается процессор; происходит инициализация бутлоадера; происходит начало загрузки init; стартует главный стартовый скрипт /init.rc; в init.rc есть секция on charger, в которой прописаны нужные действия и запуск системного процесса, который и отвечает за отображение батарейки с процентами, которую мы и видим на экране.
Итак, как мы видим, происходит частичная загрузка системы. Процесс в секции on charger всегда указывает на какой-то исполняемый файл (бинарник) лежащий где-то в системе. Выглядит примерно это так:
В init.rc объявлен сервис типа charger: service charger /system/bin/charger
Ок. Бинарник мы нашли, переименовать во что-то другое, а под его именем создаем скрипт (без расширений, в точности как назывался сам бинарник) с таким содержимым:
Сохраняем и присваиваем ему права 755. Все. Аппарат будет включатся и ребутится в андроид сразу после подачи напряжения.
Тут еще можно добавить секцию, в которой можно описать автозапуск каких либо программ по умолчанию в авто. Хотелось бы узнать каких? И по какому условию (как определить, что ваш аппарат находится именно в машине, вариантом может быть подключение какого-то оборудования, ГПС например, или запуск какой-то программы, любые другие события, придумайте), попробую реализовать?
Вторая часть - выключение при пропадании напряжения зарядки.а в файл defaul.prop или /system/build.prop в самом низу дописать строку sys.initd=1
Аналогичным init.d образом работает папка со скриптами /system/su.d, если у вас рут на основе SuperSu. Тогда бут разбирать не надо.
В любом случае, в системе должен быть установлен busybox, иначе скрипты работать НЕ БУДУТ!
Итак, init.d, busybox у нас есть. Создаем скрипт с таким содержимым:
Помещаем его в папку /system/init.d или /system/su.d с любым названием и присваиваем ему права 755. Нужно помнить, что скрипту не нужно присваивать никакое расширение имени файла, в том числе и sh. Не выполняются в init.d скрипты, имеющие расширение имени файла. После перезагрузки, планшет будет выключаться автоматически, при пропадании напряжения зарядки. Скрипт безусловен, работает по умолчанию.
Ниже рассмотрим примеры условного выключения, и варианты самих условий. Хотелось бы от Вас услышать возможные условия автоматического выключения, например по наличию подключенной EasyCAP, DAC и тому подобное. Как Вы считаете нужным идентифицировать наличия подключения к машине, соответственно важность автоматического выключения? Жду советов, по возможности, попробую реализовать условия.
Заряжая мобильное устройство, пользователь рассчитывает на определенное время его автономной работы. Однако неисправность, когда телефон на Андроиде выключается сам по себе на любом проценте, может сильно помешать выполнению запланированных дел. Рассмотрим основные причины ее появления и актуальные пути решения.
Проблемы с батареей
Деталью, которая имеет непосредственное отношение к питанию мобильного устройства, является батарея. Именно ее корректную работу следует проверить в первую очередь.
На смартфонах и планшетах со съемной задней крышкой следует провести визуальный осмотр аккумулятора. В ходе проверки его необходимо изъять и убедиться в отсутствии вздутия стенок. Если же данный признак имеет место быть – решением проблемы станет приобретение новой батареи, поскольку старая не подлежит восстановлению.
Также следует обратить внимание на контакты аккумулятора и телефона. Загрязнившиеся места соединения могут плохо пропускать ток и как следствие стать причиной неожиданного отключения. Очистить контакты можно при помощи ватки, слегка смоченной в спирте.
Ни в коем случае не нужно тереть металлические части наждачной бумагой, это может сильно повредить детали.
Причиной непредвиденного выключения смартфона иногда становится плохое прилегание контактов, которые идут из платы к аккумулятору. В таком случае достаточно взять тонкую отвертку или шило и немного отогнуть металлические проводки. Это позволит им лучше соединяться с батареей и исключить прекращение подачи тока при резком перемещении мобильного устройства.
Не исключен вариант, когда аккумулятор приходит в негодность по причине длительной эксплуатации. Определить такой вид неисправности на глаз невозможно, придется воспользоваться мультиметром, чтобы замерить силу поступающего тока или обратиться к специалисту для проведения диагностики.
Механические повреждения
Вторым видом причин, почему телефон на Андроиде сам по себе выключается, станет физическое повреждение компонентов. При падении с высоты на твердую поверхность внутри мобильного устройства могут возникнуть сколы и трещины, которые при дальнейшей эксплуатации приводят к кратковременной потере контакта микросхемы.
Одним из методов диагностики этого типа неисправности является несильное изгибание смартфона. Если в ходе операции устройство отключается, значит, присутствует трещина на материнской плате или другом элементе аппаратной составляющей.
Самостоятельно разобраться с проблемой без необходимых навыков не выйдет, поэтому единственным решением станет обращение в сервисный центр или к мастеру. Специалисты проведут полноценную диагностику и сообщат о требуемом ремонте.
Замена некоторых компонентов может быть очень дорогостоящей, что практически сравнимо с приобретением нового аппарата.
Также к механическим повреждениям, влияющим на то, что телефон на Андроиде отключается сам по себе, относится попадание влаги внутрь корпуса. Проникнувшая во внутреннее пространство вода могла стать причиной замыкания или окисления контактов. Это сказывается на дальнейшей работе смартфона и в момент определенной нагрузки может привести к неожиданному отключению.
Не лишним будет проверить кнопку питания (блокировки) смартфона. Ее неисправность или залипание ожидаемо приведет к появлению описываемой неисправности. Опытный мастер устранит проблему в короткие сроки.
Сбои программного обеспечения
Неполадки в работе ПО также могут стать причиной внезапного выключения аппарата. Прежде всего, необходимо обратить внимание на недавно установленные приложения. Возможно, они конфликтуют с другими программами, что и вызывает появление неисправности. Если в смартфоне присутствует безопасный режим, то следует загрузиться в нем и пронаблюдать за функционированием аппарата.
В таком состоянии будут работать только системные приложения, что исключит негативное влияние стороннего софта. Если телефон на Андроиде больше не выключается сам по себе на любом проценте, значит необходимо удалить некоторые установленные программы.
На мобильных устройствах с малым количеством оперативной памяти может наблюдаться непредвиденное отключение по причине ее нехватки. В настоящее время минимально требуется 2 Гб оперативной памяти. Для диагностики следует избегать перегрузки смартфона ресурсоемкими приложениями. Если проблема исчезла – телефон не рассчитан на выполнение столь сложных задач.
Устранить недостаток оперативной памяти можно удалением неиспользуемых программ, что позволит сократить количество фоновых процессов. Других вариантов решения неполадки, за исключением приобретения нового мобильного устройства – нет.
Последним вариантом разобраться со сбоем программного обеспечения станет использование режима восстановления. Загрузившись в данное меню, следует сначала выбрать пункт «wipe cache partition», что очистит весь кэш устройства. Если после перезагрузки смартфон снова самопроизвольно выключается, то придется выполнить сброс до заводских настроек, выбрав строку «wipe data/factory reset».
Обнуление параметров телефона может помочь, только если предварительно не были внесены изменения в системные файлы. В противном случае понадобится перепрошивка операционной системы через персональный компьютер.
Представленные в статье рекомендации помогут понять, что делать, если телефон на Андроиде сам выключается. Некоторые причины появления неполадки подлежат самостоятельному устранению, другие потребуют обращения в сервисный центр.
Читайте также: