Todos os recursos
? Controle dispositivos Android e iOS ou emuladores/simuladores usando comandos de terminais
? Tire as telas, altere as configurações do dispositivo , colete informações de aplicativos e dispositivos
Gerenciar aplicativos móveis - instale, reinicie, limpe dados e muito mais
? Lidar com vários dispositivos sem esforço - selecione na lista ou direcionar todos os dispositivos conectados
⏳ Economize seu tempo precioso - pare de fazer tarefas repetitivas manualmente
Atualização automática - Obtenha novos recursos e correções o mais rápido possível
Índice
? Talvez você só queira pular para a instalação?
? Comandos do Android
- Capture a tela
- Dispositivo de controle
- ✏️ Apasta
- AURL
- ? AdarkMode
- ? Atalkback
- ? abundante
- ? AanimationsPeed
- ? AFontScale
- ? Acontrol
- ? acamera
- Awireless
- Apowerbutton
- Gerenciar pacotes
- Alaunch
- Aappinfo
- ? Akill
- ? Aerase
- ? Ainstall
- ? Auninstall
- Awipe
- ? ApermissionReset
- ? AGOOGLEPLAY
- ? AbuildProject
- Gerenciar dispositivo
- AOPTIONS
- Alog
- ? acheckDevice
- ? ASERVICES
- ♻ Areboot
- Aemulador
- ? atestmonkey
? comandos iOS
- Capture a tela
- ? iscreenshot
- ? Irecord
- ? iquicktime
- Gerenciar aplicativos
- ? iinstall
- ? iuninstall
- Ilaunch
- ? Ikill
- Gerenciar dispositivo
- ioptions
- Ilang
- ILOG
- ? IcheckDevice
- ♻ Ireboot
- isimulator
- ? íconsole
? Quer compartilhar feedback ou contribuir?
Instalação
Clique aqui para revelar o guia passo a passo ↓
Nota: Esta ferramenta tem como alvo o macOS para compatibilidade, mas a maioria das interações deve funcionar em qualquer sistema UNIX.
- Terminal aberto
- Clone este repositório
git clone https://github.com/IntergalacticPenguin/mobile-toolkit.git - Configure as ferramentas Android
- Faça o download e instale as ferramentas de linha de comando Android Studio e Android (usando o Android Studio SDK Manager)
- Editar .zshrc (ou .bash_profile se você tiver shell bash)
open -e ~/.zshrc- Insira esta linha no caminho final
PATH=$PATH:/Users/dummyuser/Library/Android/sdk/platform-tools export PATH - Não se esqueça de substituir "DummyUser" pelo nome de usuário da sua conta
- Use o caminho completo para o diretório "plataforma-ferramentas"
- Deixe a depuração USB no seu dispositivo, conecte -o e autorize seu computador (clique em OK na tela do dispositivo)
- Configure as ferramentas iOS
- Instale as mais recentes ferramentas de linha de comando Xcode e iOS usando a App Store
- Instale o gerenciador de pacotes homebrew
- Execute o Xcode, conecte o dispositivo iOS ao USB e autorize seu computador (clique em "Trust" na tela do dispositivo)
- Execute qualquer script, por exemplo,
iscreenshot , a instalação de todas as ferramentas necessárias será iniciada automaticamente (JQ e Go-IOS)
- Adicione o Mobile Toolkit ao $ Path , é obrigatório para scripts iOS e ele permitirá que você execute scripts em qualquer diretório
- Editar .zshrc (ou .bash_profile se você tiver shell bash)
open -e ~/.zshrc- Insira as seguintes linhas no final
PATH=$PATH:/Users/dummyuser/mobile-toolkit/android
PATH=$PATH:/Users/dummyuser/mobile-toolkit/ios - Não se esqueça de substituir "DummyUser" pelo nome de usuário da sua conta
- Use o caminho completo para o diretório "Mobile-Toolkit" (onde você clonou este repositório)
- Adicione
export PATH ao final do arquivo
? Comandos do Android
Capture a tela
? ascreenshot
-
ascreenshot salvar captura de tela para ~/desktop -
ascreenshot -a Tire a captura de tela em todos os dispositivos conectados
? Arecord
- Tela de registro
arecord - Gravação final usando
ctrl + c - Salvar imagens de vídeo de tela para ~/desktop
- Registra áudio por padrão em dispositivos executando o Android 12 ou mais (ao usar o scrcpy versão 2.0.0 ou superior)
-
arecord <custom-name> Especifique seu próprio nome de arquivo, passando-o como argumento -
arecord -l Use a opção Legacy -l para gravar usando o ADB em vez de scrcpy
Dispositivo de controle
✏️ Apasta
apaste "[email protected]" password1 "5005 1002 3332 1112" "2/19" 5004
-
apaste <text> Insira o texto no campo atualmente focado -
apaste "[email protected]" password1 Cada argumento adicional será inserido no campo subsequente -
apaste "This is sample multi-word text." Use "" para inserir texto de várias palavras em um campo -
apaste -l Insira "parágrafo de Lorem ipsum" -
apaste -a <input-text> Insira qualquer entrada de texto (opções exibidas acima) em todos os dispositivos conectados -
apaste -a -l Insira "parágrafo de Lorem ipsum" em todos os dispositivos conectados
AURL
-
aurl "google.com" Link aberto no navegador da web ou aplicativo correspondente -
aurl -a "google.com" Link aberto no navegador da Web ou aplicativo correspondente em todos os dispositivos conectados
? AdarkMode
- Sistema de alternância
adarkmode
? Atalkback
- opção de acesso à tela
atalkback Toggle Talkback
? abundante
-
abounds os limites do layout da interface do usuário - O reinício do aplicativo pode ser necessário em APIs inferiores
? AanimationsPeed
-
aanimationspeed define uma velocidade de animação ou restauração mais lenta -
aanimationspeed <speed> defina o multiplicador de velocidade de animação
? AFontScale
-
afontscale estabeleceu grande escala de fonte (1,3x maior que o padrão) ou restauração de padrão -
afontscale <scale> Definir multiplicador de escala de fontes
? Acontrol
-
acontrol Start Scrcpy Session - Fornece espelhamento na tela do dispositivo em tempo real e controle do teclado+mouse
? acamera
- Inicie o aplicativo de câmera padrão
Awireless
- Habilitar ou desativar a conexão de ADB sem fio
- Use o ADB e o Toolkit sem ter o cabo USB conectado
Apowerbutton
- Bloqueie/desbloqueie o dispositivo (envie o evento da chave do botão liga/desliga)
- Útil para desbloquear o dispositivo após a bloqueio automaticamente bloqueado
Gerenciar pacotes
Alaunch
-
alaunch LIST APPS de terceiros e escolha um para executá-lo -
alaunch -s Liste todos os aplicativos disponíveis (incluindo OS pré -instalado) e escolha um para executá -lo -
alaunch com.dummy.package.name.app Run App por nome do pacote
Aappinfo
- Informações do aplicativo em primeiro plano da lista de
aappinfo- Nome do pacote
- Versão
- Última atualização
- Minsdk e Targetsdk
- Permissões
- (Opcional) Abra as configurações do aplicativo
-
aappinfo com.dummy.package.name.app App específico de destino, passando o nome do pacote como argumento
? Akill
-
akill reinicie o aplicativo em primeiro plano -
akill com.dummy.package.name.app App específico de destino, passando o nome do pacote como argumento
? Aerase
-
aerase exclua todos os dados locais do aplicativo em primeiro plano e reinicie -os -
aerase com.dummy.package.name.app App específico de destino, passando o nome do pacote como argumento
? Ainstall
-
ainstall some-app-file.apk Instale e execute .apk -
ainstall -a some-app-file.apk Instale e execute .apk em todos os dispositivos conectados
? Auninstall
-
auninstall Desinstall Terceiro aplicativo, escolha na lista -
auninstall com.dummy.package.name.app Nome do pacote de passagem como argumento -
auninstall -w Desinstala pacotes de festas em todos os terços- Pula alguns aplicativos essenciais, editar ignored_packages neste script para personalizar a lista para suas necessidades
Awipe
- Limpe o armazenamento interno e exclua todos os aplicativos de terceiros
? ApermissionReset
- Revogar todas as permissões de tempo de execução para todos os aplicativos
- Você terá que lidar com solicitações de permissão ao abrir quase qualquer aplicativo
? AGOOGLEPLAY
-
agoogleplay "Dummy App" Pesquisa por "Dummy App" no Google Play -
agoogleplay PESQUISA PARA APPAPELA APPILHADO ATUALMENTE PROBLEMA NA PLAY
? AbuildProject
-
abuildproject Build, Instale e Run Android Project Localizado no diretório atual -
abuildproject <relative-path> Construa, instale e execute o projeto Android localizado em <Relative-Path>
Gerenciar dispositivo
AOPTIONS
- Configurações de sistema aberto
aoptions em uma atividade específica - Você pode escolher entre predefinições rápidas
- Configurações do desenvolvedor
- Configurações de localidade
- Data e hora
- Configurações de Wi -Fi
- Gerenciamento de armazenamento
- Uso de energia
- Atividade das configurações raiz
-
aoptions A escolha entre a lista exaustiva de todas as opções disponíveis -
aoptions 1,2,3... | dev | locale | date | wifi | storage | power Use uma predefinição, escolha um
Alog
- Saída de log do sistema de impressão
alog -
alog -f <package-name> Filtro Log por nome do pacote
? acheckDevice
- Imprimir informações generais do dispositivo
- Execute verificações básicas de segurança e alternar as configurações "testando em firendly"
- 10 minutos de tempo limite na tela
- Mais alto brilho
- Data automática
- Sons de notificação desativados
- Conectividade da Internet e nome de wifi
- Escala de fonte
- Localidade de Enus
- (Opcional) Procure o dispositivo em GSMarena
? ASERVICES
- Imprimir serviços de fundo em execução
- Procure mais informações via Google
♻ Areboot
Aemulador
Necessário : Faça o uso do terminal Android Studio Java
Edit .bash_profile (ou .zshrc se você tiver zsh shell) open -e ~/.bash_profile ou open -e ~/.zshrc
Adicione a seguinte linha no final do arquivo export JAVA_HOME='/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home'
O Emulador Android suporta todos os scripts listados por padrão + ações extras listadas abaixo
aemulator <option> lide com várias atividades do emulador Android
-
start - Escolha e inicie o emulador instalado -
gprs | edge | 3g - simular a latência da rede, escolha um -
call <number> - Receba chamada falsa -
sms <number> <text> - Receba SMS falso -
gps <lat> <long> - Definir localização manual do GPS -
battery <0-100> - Defina o nível da bateria -
telnet <command> - Call Command via telnet-
event | redir | sensor | physics | finger | rotate | fold | unfold... Veja a documentação do emulador Android para obter mais informações
? atestmonkey
- Teste padrão
atestmonkey com sementes aleatórias e 15000 eventos de entrada -
atestmonkey <event-count> Teste com sementes aleatórias e contagem de eventos de entrada personalizada -
atestmonkey <event-count> <seed> teste com sementes personalizadas e contagem de eventos personalizados - Execute o teste de estresse automatizado usando o aplicativo Exersciser Monkey
- Você pode terminar o teste prematuramente usando Ctrl^C ou
atestmonkeykill , caso algo dê errado - O aplicativo em teste precisa ser fixado no modo de tela cheia para evitar interações indesejadas em outros lugares
- A localização do botão de fixação de tela está diretamente vinculada à versão do fabricante do sistema operacional e ao fabricante de dispositivos.
- Pode ser complicado ligar, veja os exemplos abaixo:
Google Nexus 5 (Android 6)
Você precisa levar a janela do aplicativo para o primeiro plano, o botão está localizado no canto inferior direito.

Google Pixel 3 (Android 11)
Você precisa clicar no ícone do aplicativo, o botão está localizado no menu pop -up.

? comandos iOS
Capture a tela
? iscreenshot
-
iscreenshot salvar a captura de tela para ~/desktop -
iscreenshot -a Tire a captura de tela em todos os dispositivos conectados
? Irecord
Necessário : Instale o VideoSnap -> Faça o download e instale videosnap-0.0.8.pkg
Necessário : Instale o FFMPEG brew install ffmpeg
- Tela de registro do
irecord - Gravação final usando
ctrl + c - Imagens de vídeo são salvas para ~/desktop
- O arquivo é compactado usando FFMPEG
? iquicktime
- Execute o Picker de fonte de vídeo QuickTime e Abra (para que você possa escolher um dispositivo imediatamente)
- Pode ser necessário permitir a permissão do sistema de segurança, para que o script possa acessar o aplicativo QuickTime
- Este é um script de fallback para
irecord no M1 Macs, pois atualmente não está funcionando
Gerenciar aplicativos
? iinstall
-
iinstall some-app-file.ipa install .ipa (certifique-se de usar a compilação corretamente assinada) -
iinstall -a some-app-file.ipa install .ipa para todos os dispositivos conectados
? iuninstall
-
iuninstall desinstala o aplicativo de terceiros, escolha na lista -
iuninstall com.dummy.package.name.app Nome do pacote de passagem como argumento -
iuninstall -w desinstale todos os pacotes de terceiros- Pula alguns aplicativos essenciais, editar ignored_packages neste script para personalizar a lista para suas necessidades
Ilaunch
- ILAUNCH LIST APPS TERCEIROS E Escolha um para executá-lo
- ILAUNCH -S LISTA Os aplicativos pré -instalados e escolha um para executá -lo
- Ilaunch com.dummy.bundle.id.app Run App by Bundle ID
? Ikill
- Ikill listar aplicativos de terceiros e escolher um para reiniciar
- Ikill -s listar os aplicativos pré -instalados e escolher um para reiniciar
- ikill com.dummy.bundle.id.app App específico de destino, passando o ID do pacote como argumento
Gerenciar dispositivo
ioptions
- Ioptions Open System Settings Application
Ilang
- Ilang <lang> Mude a linguagem do dispositivo para diferente, de acordo com a ISO-639 (ou seja, "CS")
- Ilang Altera a linguagem do dispositivo para diferente, escolha de uma lista de todos os suportados
ILOG
- saída de log do sistema de impressão ilog
? IcheckDevice
- Informações do dispositivo de impressão
- (Opcional) Procure o dispositivo em GSMarena
♻ Ireboot
isimulator
- O simulador possui funcionalidade limitada (sem câmera, biometria, AppStore ...), mas oferece algumas opções extras, indisponíveis em dispositivos físicos iOS
- Isimulator <Opção> Lidar com várias atividades relacionadas ao simulador
- Iniciar - Escolha e inicie o simulador instalado
- Captura de tela - salve a captura de tela para ~/desktop
- Registro - Salvar gravação de tela para ~/Desktop (resolução completa e taxa de quadros, sem problemas de QuickTime)
- Colar <sext> - Insira o texto em Pasteboard
- Importar <File> - Importar Imagem ou Vídeo para o App da Galeria de Simulador
- LOG - IMPRIMENTO LOG
- url <url> - Link aberto no navegador da web ou aplicativo correspondente
- Limpe - limpe todos os dados do simulador
- Bateria <0-100> - Defina o nível da bateria exibido na barra de status (sem impacto funcional)
- Tempo <hh: mm> - Definir tempo exibido na barra de status (sem impacto funcional)
? íconsole
- iconsole Examine os logs do sistema iOS ou macOS usando o aplicativo de console
Feedback e contribuição
⁉️ Envie um problema para relatar quaisquer bugs, solicitar um recurso ou fazer perguntas.
? As solicitações de tração são muito apreciadas, consulte o quadro de problemas.
Visite também meu projeto NOMO e deixe uma estrela.
? Encontre -me no LinkedIn ou Twitter.