Eu possuo um Samsung Galaxy S Relay 4G executando o Android 4.1.2. Além disso, tenho adb instalado em um PC.
Quando pressiono o botão Liga / Desliga e toque em "Reiniciar", meu telefone leva cerca de dez segundos para desligar. Então ele se reinicia.
Quando entro adb reboot
, o telefone é desligado muito mais rápido: o desligamento leva apenas um segundo. Então ele é reiniciado.
Minhas perguntas:
Por que é
adb reboot
muito mais rápido?É simplesmente pular a animação de desligamento da operadora de rede móvel ou também pular alguns procedimentos mais importantes?
Posso usar
adb reboot
sempre que quiser reiniciar o telefone ou há alguma desvantagem em fazer isso?(Opcional) Como você sabe?
Mais informações (você pode pular isso)
Eu fiz algumas pesquisas antes de postar esta pergunta. Mas ainda não sou iluminado. Deixe-me mostrar o que eu queria descobrir.
Tetsuyuki Kobayashi, da Kyoto Microcomputer Co., explica no slide 8 desta apresentação de slides em PDF que o adb consiste em três partes: um cliente, um servidor e um daemon. O cliente e o servidor são executados em um PC. O daemon é executado em um telefone. No slide 11, ele explica que as três partes são criadas a partir de um diretório de origem. (É este diretório .)
Tentei pesquisar no diretório de origem a palavrareboot
e ler partes dos services.cpp , mas ainda não consegui descobrir o que adb reboot
realmente faz, ou quais bytes ele envia por fio, ou qual código o telefone executa quando ele é executado. recebe esses bytes. Também não descobri a resposta para nenhuma das minhas perguntas.
Relacionado : "Qual é a melhor maneira de reiniciar o Android via linha de comando (remotamente)?"
setprop sys.powerctl reboot
faria. Um desligamento imundo seguido pela instrução para reiniciar novamente.