Ok, sei que isso parece estranho, mas aqui está o que estou tentando fazer.
- Encontre o arquivo de classe de inicialização de um telefone por meio do comando shell. O arquivo de classe de inicialização é uma lista de APKs que o telefone precisa para executar determinadas operações
- Salvando essa lista como arquivo de texto no meu PC. Este arquivo de texto agora conterá nomes .jar como core.jar, services.jar, sc.jar, etc.
- Percorra este arquivo de texto e leia os nomes um por vez.
- Para cada nome de arquivo encontrado no arquivo de texto, ele irá para o diretório de estrutura do telefone e copiará o arquivo real ao qual o texto faz referência. Por exemplo ....
Se o primeiro nome no texto fosse "services.jar", ele procuraria no diretório correto do telefone e localizaria o arquivo real "services.jar" e o copiaria para um diretório no PC.
Até agora eu tenho 1 e 2 funcionou. Eu também sei como puxar o arquivo do diretório correto no telefone, eu só não sei como quebrar o loop em cada iteração para executar a função de pesquisa e cópia.
Então, agora, aqui está como o BAT funciona ....
adb shell echo $BOOTCLASSPATH > tmp.txt
Agora quero percorrer o tmp.txt para ver quais nomes estão nele e puxar um arquivo de outro local com base nos nomes que ele encontrar. Se core.jar estiver no texto, ele extrairá o arquivo core.jarfile real do telefone.
Se eu usar ...
SETLOCAL ENABLEDELAYEDEXPANSION
for /f "usebackqdelims=" %%a in ("temp.txt") do (
SET file!index!=%%a
"what file did i find on this iteration?
"look in directory "X" on phone and copy that file to PC
....continue loop
ECHO !index! - %%a | more
SET /A index=!index!+1
)
para percorrer o arquivo txt, como posso parar em cada iteração para puxar o arquivo associado a esse nome do diretório diferente? Então primeiro percorre o core.jar, então eu pego o core.jar real do telefone. Segundo loop que encontra services.jar na lista, eu pego o services.jar real de outro local .... etc.
Tenha em mente que durante todo o tempo que este BAT está a funcionar, o meu telefone está ligado ao meu PC via USB, caso contrário, obviamente, não funcionará correctamente.
Espero ter explicado isso claramente ... é difícil descrever.
Obrigado
Jimmie