O Gemini no Android Studio funciona como seu colaborador de programação, acelerando seu fluxo de trabalho de desenvolvimento ao gerar código, resumir tópicos complexos, encontrar recursos específicos e muito mais. A comunicação eficaz é a chave para aproveitar todo o potencial do Gemini.
Este guia descreve estratégias para configurar seu ambiente de desenvolvimento e escrever comandos que geram respostas úteis e confiáveis. Para várias estratégias, fornecemos exemplos de comandos para diferentes casos de uso. Para mais exemplos de comandos, consulte a galeria de comandos.
Usar o Modo Agente
O modo agente do Gemini no Android Studio vai além do que você pode experimentar apenas conversando com o Gemini. Você pode dar ao agente uma meta de alto nível, e ele vai dividir o problema e criar um plano para resolvê-lo. O agente usa ferramentas, edita vários arquivos e corrige erros à medida que avança. O Modo Agente ajuda você a lidar com tarefas complexas de maneira mais eficiente, acelerando todo o processo de desenvolvimento.
Dê informações específicas
O Gemini no Android Studio funciona melhor com instruções claras e específicas. Se houver bibliotecas, APIs ou abordagens específicas que você gostaria de usar, inclua-as na sua pergunta ou no arquivo AGENTS.md raiz do projeto para que elas sejam mantidas em todas as interações. É como enviar um relatório de bug: quanto mais informações você fornecer, mais rápido e eficaz será a solução do problema.
Implementação de novas funcionalidades:
O que fazer
O que não fazer
Geração de código:
O que fazer
Escreva uma função de suspensão do Kotlin que use a biblioteca Coil para baixar uma imagem de uma determinada string de URL.
A função precisa ser nomeada como fetchImageAsBitmap
. Ele precisa receber um Context
e um URL String
como argumentos e retornar um Bitmap
anulável. Se houver um erro de rede ou de decodificação,
ele vai capturar a exceção, registrar e retornar
null
.
O que não fazer
Explicar um conceito:
O que fazer
Estou criando um app de reprodução de música e preciso continuar a reprodução quando o app estiver em segundo plano.
Quais são minhas opções para manter meu app em execução enquanto o usuário faz outras coisas no dispositivo? Quais são os requisitos de nível de API e as implicações na duração da bateria para cada abordagem?
O que não fazer
Descrever a estrutura da resposta
Por padrão, o Gemini fornece respostas em um formato conversacional, com base em parágrafos. Embora isso seja útil para explicações, você pode receber resultados mais eficazes e imediatamente utilizáveis dizendo ao modelo como estruturar a resposta. Especificar o formato de saída direciona o modelo para organizar as informações de maneira clara e previsível, economizando seu tempo de reformatação.
Se você quiser inserir no app um código gerado pelo Gemini e precisar dele em um formato específico para usar instantaneamente, dê instruções claras ao Gemini sobre como gerar e formatar o código.
Estruturar a resposta:
O que fazer
Crie uma entidade do Room para um perfil de usuário. Ele precisa conter
os campos id
, userName
, email
e
memberSince
. O campo id
precisa ser gerado automaticamente. O campo memberSince
precisa representar um carimbo de data/hora.
O que não fazer
Se você estiver fazendo uma pergunta mais aberta, peça x opções.
Limitar a resposta:
O que fazer
O que não fazer
Divida pedidos complexos em tarefas menores
Para solicitações complexas e com várias etapas, use o modo agente. No entanto, se a abordagem do agente não for o que você espera, pode ser útil orientar o Gemini com uma série de comandos menores e sequenciais em vez de pedir tudo de uma vez. Essa abordagem oferece mais controle e permite verificar cada etapa antes de prosseguir para a próxima.
Como usar comandos sequenciais:
O que fazer
Instrução 1: o modelo de dados
Primeiro, crie uma classe de dados do Kotlin chamada User
. Ele precisa ter três propriedades: id
(um Int), name
(uma String) e email
(uma String).
Comando 2: a camada
de rede
Agora, crie uma interface de API Retrofit chamada
ApiService
. Ele precisa de um único suspend fun
chamado
getUsers()
que retorna um
List<User>
.
Comando 3: o gerenciamento de estado
Em seguida, escreva um UsersViewModel
que use o ApiService
como uma dependência. O UsersViewModel
precisa expor um
StateFlow
de uma classe UiState
sealed que pode
representar os estados Loading, Success(users: List
e
Error(message: String)
. Crie uma função no
ViewModel
para buscar os usuários e atualizar o estado. Escreva testes de unidade para
as novas funcionalidades
Comando 4: a camada de
interface
Por fim, escreva uma função do Jetpack Compose chamada
UserListScreen
que aceite o UiState
como um
parâmetro. Use uma instrução when
para mostrar um
CircularProgressIndicator
para o estado de carregamento, um
LazyColumn
de nomes de usuários para o estado de sucesso e um
elemento Text
com a mensagem de erro para o estado de erro. Adicione testes que verifiquem a nova funcionalidade.
O que não fazer
ViewModel
que usa Retrofit e corrotinas, um repositório para processar a lógica de dados,
uma classe de dados User
e mostrar estados de carregamento e erro.Gerenciar contexto
Uma parte importante de trabalhar com o Gemini no Android Studio é fornecer o contexto certo. Forneça snippets de código, conteúdo de arquivos e informações sobre a estrutura do projeto relevantes para receber as respostas mais úteis. Talvez seja necessário iterar para encontrar o equilíbrio certo: muita informação pode confundir o Gemini, enquanto pouca não fornece contexto suficiente para que ele ajude. Use os recursos disponíveis para dar ao Gemini acesso ao contexto necessário:
- Anexe imagens para mostrar a interface que você está imaginando ou a arquitetura do app que está tentando entender.
- Anexe arquivos para destacar partes relevantes da base de código.
- Use arquivos
.aiexclude
para fazer o Gemini ignorar determinadas partes da base de código. - Use arquivos AGENTS.md para dar instruções específicas do projeto e compartilhar com sua equipe. Ao usar arquivos AGENTS.md, use cabeçalhos e formatação Markdown para deixar suas instruções claras.
- Ao usar o modo agente, configure servidores MCP para ampliar o conhecimento e as capacidades do Gemini com o ambiente externo.
Pedir explicações
Se você não entender a resposta do Gemini no Android Studio, peça uma explicação. Essa é uma ótima maneira de aprender e verificar se a solução proposta é adequada para seu caso de uso. Se a resposta não for o que você esperava, talvez o Gemini esteja errado. Ao pedir uma explicação, ele terá a oportunidade de se corrigir.
Iterar as instruções
Assim como quando você trabalha com um colega, trabalhar com o Gemini no Android Studio às vezes exige uma troca de mensagens para esclarecer a tarefa e o resultado esperado. Se a resposta inicial do Gemini não for suficiente, responda com feedback e sugestões de melhoria. Se a resposta melhorar com base nas suas sugestões, incorpore essa sugestão no comando original atualizando a entrada na Biblioteca de comandos ou os arquivos AGENTS.md.