Gostaria de perguntar se é possível fazer backup e restaurar todas as configurações e aplicativos do Android por meio do ADB.
Eu tentei:
adb backup -all
adb: unable to connect for backup
Não está funcionando, enquanto todos os outros comandos estão funcionando.
É possível usar este bmgr ?
adb: unable to open file ./backup.ab
ao executaradb backup -all
. nãoadb devices
encontrar o seu android?Respostas:
Verifique se a depuração está ativada e o dispositivo está conectado. Além disso, lembre-se de selecionar o botão "fazer backup dos meus dados" no próprio dispositivo (o dispositivo requer confirmação). Se você não vê essa tela no seu dispositivo, provavelmente está executando um telefone pré-ICS (<4.0), que infelizmente não terá esse recurso.
Além disso,
bmgr
não é uma solução para isso - é uma ferramenta para testar aplicativos que lidam com seus próprios backups usando o API de backup disparando manualmente os métodos "backup" e "restore" no agente de backup no aplicativo, sem bombardear o dispositivo e copiar dados de / para a máquina de desenvolvimento.fonte
Aqui está o meu comando para fazer backup de coisas
Existem alguns arquivos nos quais eu recebo uma permissão negada - mas como esse backup é feito para fazer o root do dispositivo, não consigo mais permissões :(
fonte
-p
parâmetro paramkdir
evitar algumas mensagens de erro e removidas./
na frente de./adb
):time adb shell ls -l -a | grep '^[^l]' | sed -e 's/^d.* \([^ ]*\)\r$/mkdir -p sav\/\1; adb pull \/\1 sav\/\1/' -e 's/-.* \([^ ]*\)\r$/adb pull \/\1 sav\/\1/' | /bin/bash
Se eu entendi corretamente, esse link pode ser o que você está procurando. Para resumir:
1) Execute
adb devices
para garantir que seu dispositivo esteja conectado.2) Corra
adb pull /data/app ./
para pegar todos os APKs do aplicativo e colocá-los na pasta atual.a) Ou Corra
adb pull /system/sd/app ./
para obter aplicativos no cartão SD.3) As configurações estão localizadas em vários lugares; portanto, descubra onde e use o mesmo
adb pull
comando para pegá-las.E o link detalha como restaurar com base em Mac ou Windows.
Como alternativa, parece que o
bmgr
comando que você mencionou também funcionaria com alguns comandos simples (adb shell bmgr backup <package>
para fazer backup eadb shell bmgr restore <package>
restaurar). O que mais você está procurando?fonte
bmgr
comando é uma ferramenta para os desenvolvedores testarem o backup / restauração de aplicativos. Na verdade, ele não copia nenhum dado do dispositivo, portanto, é improvável que seja útil.pull: building file list... 0 files pulled. 0 files skipped.
adb pull
não funcionará em dispositivos não-rooteados para dados de aplicativos particulares. Ebmgr
é apenas para googles controladores nuvem de backupO problema provavelmente se deve a mais de um dispositivo / emulador conectado.
verifique
adb devices
se mostra mais de um dispositivo e talvez não consiga se conectarspecialy to emulators
.executá-
adb usb
lo, reiniciará outros dispositivos, desconectará / reconectará o cabo usb, agora executeadb devices
deve mostrar apenas um dispositivo.
agora faça
adb backup -all
e você deve estar pronto para ir :)
fonte
Certifique-se de executar a atualização do SDK e marque especificamente a caixa de drivers USB do Google e atualize o SDK.
Após ativar a depuração USB no dispositivo e conectar ao PC, você deverá receber uma solicitação sobre a instalação de drivers. Mesmo que seu gerenciador de dispositivos aberto seja bem-sucedido e encontre seu telefone, clique com o botão direito do mouse e atualize os drivers e aponte-o para a pasta do driver USB do Google na
SDK > Extras > Google USB
e deixe-o atualizar os drivers.Então você deve conseguir fazer backups completos do seu dispositivo.
fonte
Eu tenho um GS4 que eu precisava fazer backup e infelizmente encontrei esse erro. depois de um pouco de coçar a cabeça (e xingar), encontrei uma correção que espero que funcione para você. Consegui encontrar isso apenas executando
abd
e percorrendo a documentação de ajuda. Eu descobri que-d
é um parâmetro que "direciona o comando para o único dispositivo USB conectado". Então, depois de conectar e conectar, consegui que funcionasse para mim. O comando que eu usei foi:adb -d backup -apk -shared -all -f C:\Users\NAME\backup.ab
Espero que isso funcione para alguém com o mesmo problema que eu tive.
fonte
Eu tive o mesmo problema e também sou pré-ICS. O que eu fiz para contornar isso foi usado ls of
/
e awk (com grep para pular links) para criar um arquivo em lotes que puxa cada diretório real para um diretório no meu PC.fonte