Android Developers
Plataforma Android Studio Google Play Jetpack Kotlin Documentos Notícias
  • Documentação
Visão geral Guias Referência Amostras Design e qualidade
Android Developers
  • Plataforma
  • Android Studio
  • Google Play
  • Jetpack
  • Kotlin
  • Documentos
    • Visão geral
    • Guias
    • Referência
    • Amostras
    • Design e qualidade
  • Notícias
  • Noções básicas do app
  • Introdução
  • Criar seu primeiro app
    • Visão geral
    • Criar um projeto para Android
    • Executar seu app
    • Criar uma IU simples
    • Iniciar outra atividade
  • Fundamentos do app
  • Recursos do app
    • Visão geral
    • Gerenciar alterações de configuração
    • Localização
      • Localizar seu app
      • Testar seu app com pseudolocalizações
      • Compatibilidade com Unicode e internacionalização
      • Resolução de idioma e localidade
    • Recursos XML complexos
    • Tipos de recursos
      • Visão geral
      • Animação
      • Lista de estados de cores
      • Drawable
      • Layout
      • Menu
      • String
      • Estilo
      • Fonte
      • Mais tipos
  • Arquivo de manifesto do app
    • Visão geral
    • <action>
    • <activity>
    • <activity-alias>
    • <application>
    • <category>
    • <compatible-screens>
    • <data>
    • <grant-uri-permission>
    • <instrumentation>
    • <intent-filter>
    • <manifest>
    • <meta-data>
    • <path-permission>
    • <permission>
    • <permission-group>
    • <permission-tree>
    • <provider>
    • <receiver>
    • <service>
    • <supports-gl-texture>
    • <supports-screens>
    • <uses-configuration>
    • <uses-feature>
    • <uses-library>
    • <uses-permission>
    • <uses-permission-sdk-23>
    • <uses-sdk>
  • Dispositivos
  • Compatibilidade do dispositivo
    • Visão geral
    • Visão geral da compatibilidade de tela
    • Compatibilidade com densidades de pixel diferentes
    • Compatibilidade com cortes de tela
    • Declarar compatibilidade restrita com a tela
    • Compatibilidade com vários APKs
      • Visão geral
      • Criar vários APKs para níveis de API diferentes
      • Criar vários APKs para tamanhos de tela diferentes
      • Criar vários APKs para texturas GL diferentes
      • Criar vários APKs com diversas dimensões
    • Compatibilidade com diferentes idiomas e culturas
    • Compatibilidade com diferentes versões da plataforma
    • Filtros no Google Play
  • Tablets, telas grandes e dispositivos dobráveis
    • Layouts responsivos para tablets, telas grandes e dobráveis
    • Compatibilidade com tamanhos de tela diferentes
    • Suporte a várias janelas
    • Criar apps para dispositivos dobráveis
  • Wear
    • Visão geral
    • Como adicionar recursos do Wearable às notificações
      • Visão geral
      • Criação de uma notificação
      • Estilos de notificação
      • Modo bridge para notificações
      • Como manter a compatibilidade
    • Como criar apps para wearables
      • Visão geral
      • Como criar e executar um app para wearables
      • Apps autônomos
      • Como criar layouts personalizados
      • Como manter seu app visível
      • Autenticação no Android Wear
      • Entrada de texto por voz
      • Como empacotar e distribuir apps para Android Wear
      • Como depurar um app do Android Wear
      • Como capturar a tela da IU do Android Wear
      • Como criar apps do Android Wear para a China
    • Como criar IUs personalizadas
      • Visão geral
      • Como definir layouts
      • Como criar listas
      • Como mostrar confirmações
      • Como sair das atividades em tela cheia
      • Como usar a biblioteca Wear UI
      • Navegação e ações do Android Wear
      • Botões físicos
      • Entrada por seletor giratório
      • Como criar editores do método de entrada
      • Como usar gestos de pulso
    • Como enviar e sincronizar dados
      • Visão geral
      • Acesso à rede e sincronização
      • Como acessar a camada de dados wearable
      • Como sincronizar itens de dados
      • Como transferir recursos
      • Envio e recebimento de mensagens
      • Como gerenciar eventos da camada de dados
      • Como migrar apps do Android Wear para o GoogleApi
    • Como criar provedores de dados
      • Visão geral
      • Expor dados a complicações
    • Como criar mostradores de relógio
      • Visão geral
      • Como projetar mostradores de relógio
      • Como criar um serviço para mostradores de relógio
      • Como desenhar mostradores de relógio
      • Complicações de mostradores de relógio
      • Como expor dados a complicações
      • Como adicionar complicações a um mostrador de relógio
      • Como criar mostradores de relógio interativos
      • Fornecimento de atividades de configuração
      • Como resolver problemas comuns
      • Melhorar o desempenho com a aceleração de hardware
      • Como otimizar mostradores de relógio
    • Como detectar o local
    • Blocos
    • Como solicitar permissões
    • Como usar o alto-falante
  • Android TV
    • Visão geral
    • Criar apps para TV
      • Visão geral
      • Primeiros passos com apps para TV
      • Bibliotecas do AndroidX TV
      • Gerenciar o hardware da TV
      • Gerenciar controladores de TV
      • Criar layouts para TV
      • Teclado na tela
      • Criar navegação para TV
      • Práticas recomendadas para aumentar o engajamento no Google TV
    • Criar apps de reprodução para TV
      • Visão geral
      • Criar um navegador de catálogo
      • Oferecer uma visualização de card
      • Criar uma visualização detalhada
      • Usar controles de transporte do Leanback
      • Controles de reprodução na TV
      • Exibir um card do Tocando agora
      • Adicionar uma etapa guiada
      • Apresentar usuários iniciantes ao seu app
      • Permitir reprodução em segundo plano
    • Ajudar usuários a encontrar conteúdo na TV
      • Visão geral
      • Conteúdo de TV recomendado
        • Visão geral
        • Canais na tela inicial
        • Atributos do programa de vídeo
        • Atributos do programa de áudio
        • Atributos do programa de jogo
        • Assistir a seguir
          • Adicionar programas
          • Atributos
          • Diretrizes para desenvolvedores de apps
          • Diretrizes para provedores de TV
        • Visualizar vídeos
        • Recomendações no Android N e versões anteriores
      • Tornar os apps da TV pesquisáveis
      • Pesquisar nos apps da TV
    • Criar jogos para TV
    • Criar serviços de entrada de TV
      • Visão geral
      • Desenvolver um serviço de entrada para TV
      • Trabalhar com dados do canal
      • Gerenciar a interação do usuário com a TV
      • Compatibilidade com diferença de tempo
      • Compatibilidade com gravação de conteúdo
    • Lista de verificação de apps para TV
    • Acessibilidade da TV
      • Compatibilidade com a acessibilidade para apps não nativos
      • Práticas recomendadas de acessibilidade para apps não nativos
      • Exemplos de avaliação do TalkBack para apps para TV
    • Visualização do desenvolvedor do Android 12 para TV
  • Android para carros
    • Visão geral
    • Criar apps de mídia para carros
      • Criar apps de mídia para carros
      • Adicionar compatibilidade com o Android Auto
      • Adicionar compatibilidade com o SO Android Automotive
    • Criar apps de mensagens para o Android Auto
    • Criar apps de navegação, estacionamento e carregamento para o Android Auto (Beta)
    • Testar apps Android para carros
    • Google Play Services
    • Notificações no SO Android Automotive
  • Android Things
    • Visão geral
    • Diferenças de plataforma
    • Serviços do Google
    • Hardware compatível
      • Visão geral
      • NXP i.MX7D
      • Raspberry Pi 3
      • Configuração avançada
        • Visão geral
        • Atualizar uma imagem manualmente
        • Recuperar um dispositivo
        • Como conectar ao Wi-Fi com adb
    • Criar apps
      • Criar um app do Android Things
        • Visão geral
        • Criar um projeto
        • Conectar o hardware
        • Interagir com periféricos
        • Integrar drivers periféricos
      • Estabelecer comunicação com dispositivos sem fio
        • Bluetooth
        • LoWPAN
      • Configurar dispositivos
        • Configurações
        • Atualizações
      • Interagir com periféricos
        • Visão geral
        • GPIO
        • PWM
        • I2C
        • SPI
        • UART
        • PIO nativo
        • Ferramenta CLI
      • Integrar código nativo
      • Criar drivers de espaço do usuário
        • Visão geral
        • Local
        • Entrada
        • Sensores
        • LoWPAN
      • Amostras
    • Gerenciar dispositivos
      • Visão geral
      • Criar um produto
      • Configurar um produto
      • Criar uma versão
        • Visão geral
        • Gerenciar apps
      • Enviar uma atualização por push
        • Visão geral
        • Atualizações automáticas
      • Monitorar análise
    • Termos
      • Termos de Serviço do Console
      • Contrato de licença do SDK
    • Console do Android Things
  • Dispositivos Chrome OS
    • Visão geral
    • Como criar apps para o Chrome OS
    • Como otimizar apps para o Chrome OS
    • Como preparar seu ambiente para desenvolvedores
    • Compatibilidade do manifesto do app para Chromebooks
    • Compatibilidade com dispositivos Chrome OS para apps
    • Diferenças de renderização de apps em Chromebooks
    • Como gerenciar janelas
    • Compatibilidade de entrada para Chromebooks
    • Como adaptar jogos no Chrome OS
    • Animação suave no Chrome OS
    • Casos de teste para apps Android no Chrome OS
  • Assuntos principais
  • Atividades
    • Introdução a atividades
    • Ciclo de vida da atividade
    • Alterações no estado da atividade
    • Testar suas atividades
    • Tarefas e pilha de retorno
    • Processos e ciclo de vida de um app
    • Parcelables e pacotes
    • Fragmentos
      • Visão geral
      • Criar um fragmento
      • Gerenciador de fragmentos
      • Transações de fragmentos
      • Animar transições entre fragmentos
      • Ciclo de vida dos fragmentos
      • Como salvar o estado com fragmentos
      • Comunicar com fragmentos
      • Como usar a barra de apps
      • Como exibir caixas de diálogo com DialogFragment
      • Testar seus fragmentos
    • Interagir com outros apps
      • Visão geral
      • Como enviar o usuário para outro app
      • Como ver um resultado de uma atividade
      • Como permitir que outros apps inicializem sua atividade
      • Como gerenciar a visibilidade do pacote
      • Como configurar a visibilidade do pacote com base em casos de uso
    • Como gerenciar links de apps
      • Visão geral
      • Como ativar links para o conteúdo do app
      • Verificar os links de apps
      • Criar links para apps instantâneos
    • Carregadores
    • Telas recentes
    • Restrições para o início de atividades em segundo plano
    • Atalhos de apps
      • Visão geral
      • Criar atalhos
      • Gerenciar atalhos
      • Práticas recomendadas para atalhos
    • Widgets de apps
      • Visão geral
      • Criar um widget de apps
      • Criar um host de widgets de apps
  • Compatibilidade de apps
    • Visão geral
    • Ferramentas de framework de compatibilidade
    • Restrições para interfaces que não são SDK
  • Componentes de arquitetura
    • Visão geral
    • Como adicionar componentes ao seu projeto
    • Inicialização do app
    • Datastore
    • Vinculação de visualizações
      • Visão geral
      • Migrar de sintéticos do Kotlin para vinculação de visualizações
    • Biblioteca Data Binding
      • Visão geral
      • Primeiros passos
      • Layouts e expressões de vinculação
      • Trabalhar com objetos de dados observáveis
      • Classes de vinculação geradas
      • Como vincular adaptadores
      • Vincular exibições de layout a componentes de arquitetura
      • Vinculação de dados bidirecional
    • Como gerenciar ciclos de vida
    • LiveData
    • Biblioteca Paging
      • Visão geral
      • Exibir listas paginadas
      • Carregar dados paginados
      • Paging 3
        • Visão geral
        • Carregar e exibir dados paginados
        • Página da rede e do banco de dados
        • Transformar fluxos de dados
        • Migrar para a Paging 3
    • ViewModel
    • WorkManager
      • Visão geral
      • Primeiros passos
      • Guias de instruções
        • Como definir WorkRequests
        • Estados de trabalho
        • Como gerenciar trabalhos
        • Como observar o andamento intermediário do worker
        • Como encadear trabalhos
        • Implementação de testes do Worker
        • Testes de integração com o WorkManager
        • Como depurar o WorkManager
      • Conceitos avançados
        • Configuração e inicialização
        • Linhas de execução no WorkManager
          • Visão geral
          • Linhas de execução no Worker
          • Linhas de execução no CoroutineWorker
          • Linhas de execução no RxWorker
          • Threads no ListenableWorker
        • Compatibilidade para workers com longa duração
      • Como migrar do Firebase JobDispatcher
      • Como migrar do GCMNetworkManager
    • Como salvar estados
    • Módulo Saved State para ViewModel
    • Usar corotinas do Kotlin com componentes de arquitetura
    • Notas da versão
    • Outros recursos
  • Componente de navegação
    • Visão geral
    • Princípios do Navigation
    • Primeiros passos
    • Criar destinos
    • Projetar para diferentes formatos
    • Criar gráficos de navegação
    • Gráficos aninhados
    • Ações globais
    • Navegar até um destino
    • Navegação condicional
    • Transmitir dados entre destinos
    • Criar um link direto para um destino
    • Animar transições entre destinos
    • Atualizar componentes da IU com NavigationUI
    • DSL do Kotlin
    • Criar visualizações deslizáveis com guias usando o ViewPager
    • Criar visualizações deslizáveis com guias usando o ViewPager2
    • Interagir programaticamente
    • Navegar com módulos de recursos
    • Testar navegação
    • Processamento de mudanças de configuração
    • Adicionar novos tipos de destino
    • Oferecer navegação de retorno personalizada
    • Migrar para o componente do Navigation
  • Intents e filtros de intent
    • Visão geral
    • Intents comuns
  • Interface do usuário
    • Visão geral
    • Layouts
      • Visão geral
      • Como criar uma IU responsiva com o ConstraintLayout
      • Adicionar movimento ao layout com o MotionLayout
        • Visão geral
        • Exemplos do MotionLayout
        • Referência XML do MotionLayout
          • Visão geral
          • <MotionScene>
          • <ConstraintSet>
          • <Constraint>
          • <Transition>
          • <onClick>
          • <onSwipe>
          • <KeyFrameSet>
          • <KeyPosition>
          • <KeyAttribute>
      • Como criar uma lista com o RecyclerView
      • Personalização avançada do RecyclerView
      • Criar um layout baseado em cards
      • Como implementar fluxos adaptáveis de IU
      • Como melhorar o desempenho do layout
        • Visão geral
        • Como otimizar as hierarquias de layout
        • Reutilizar layouts com <include/>
        • Atraso no carregamento de visualizações
      • Layout linear
      • Visualização do adaptador
      • Layout relativo
      • Personalizar componentes de visualização
        • Visão geral
        • Como criar uma classe de visualização personalizada
        • Como implementar desenho personalizado
        • Como tornar a visualização interativa
        • Como otimizar a visualização
    • Aparência
      • Material Design
      • Estilos e temas
      • Tema escuro
      • Ícones adaptáveis
      • Adicionar um botão de ação flutuante
      • Criar sombras e recortar visualizações
      • Texto
        • Dimensionamento automático do TextView
        • Fontes para download
        • Fontes em XML
        • Compatibilidade com emoji
        • Widget de lupa
        • Períodos
      • Botões
      • Caixas de seleção
      • Botões de opção
      • Botões ativar
      • Ícones de carregamento
      • Seletores
      • Dicas
    • Notificações
      • Visão geral
      • Criar uma notificação
      • Criar notificação expansível
      • Exibir notificações com detecção de hora
      • Iniciar atividade a partir de uma notificação
      • Criar um grupo de notificações
      • Criar e gerenciar canais de notificação
      • Modificar um selo de notificação
      • Criar notificação personalizada
    • Conversas
    • Balões
    • Adicionar a barra de apps
      • Visão geral
      • Configurar a barra de apps
      • Adicionar e administrar ações
      • Adicionar uma ação "Up"
      • Usar exibições e provedores de ação
    • Controlar a visibilidade da IU de sistema
      • Visão geral
      • Escurecer as barras do sistema
      • Ocultar a barra de status
      • Ocultar a barra de navegação
      • Ativar modo de tela cheia
      • Responder a alterações de visibilidade da IU
    • Compatibilidade com recurso de deslizar para atualizar
      • Visão geral
      • Como adicionar o recurso de deslizar para atualizar ao seu app
      • Como responder a um gesto de atualização
    • Visão geral das notificações toast
    • Visão geral das mensagens pop-up
      • Visão geral
      • Criar e exibir uma mensagem pop-up
      • Adicionar ação a uma mensagem
    • Caixas de diálogo
    • Menus
    • Configurações
      • Visão geral
      • Organizar as configurações
      • Personalizar as configurações
      • Usar valores salvos
      • Criar uma hierarquia no código
      • Lidar com outros fatores de forma
      • Componentes e atributos de preferência
    • Pesquisar
      • Visão geral
      • Como criar uma interface de pesquisa
      • Como adicionar sugestões de consultas recentes
      • Como adicionar sugestões personalizadas
      • Configuração pesquisável
      • Como adicionar funcionalidade de pesquisa
        • Visão geral
        • Como configurar a interface de pesquisa
        • Como armazenar e pesquisar dados
        • Como continuar compatível com versões anteriores
    • Copiar e colar
    • Arrastar e soltar
    • Compatibilidade com picture-in-picture
    • Como criar IUs compatíveis com versões anteriores
      • Visão geral
      • Como abstrair as novas APIs
      • Proxy para as novas APIs
      • Como criar uma implementação com APIs mais antigas
      • Como usar o componente com suporte de versão
    • Controle do dispositivo
  • Animações e transições
    • Visão geral
    • Introdução às animações
    • Visão geral de animação de propriedade
    • Animar gráficos drawable
    • Revelar ou ocultar uma visualização usando uma animação
    • Mover visualização usando uma animação
    • Mover visualização usando uma animação com rolagem
    • Aumentar visualização usando uma animação com zoom
    • Animar movimentos com física relacionada a objetos elásticos
    • Animar automaticamente atualizações de layout
    • Animar alterações de layout com uma transição
    • Criar uma animação de transição personalizada
    • Iniciar uma atividade usando uma animação
    • Deslizar entre fragmentos com o ViewPager
    • Deslizar entre fragmentos com o ViewPager2
    • Migrar do ViewPager para o ViewPager2
    • Outros recursos
  • Imagens e gráficos
    • Visão geral
    • Visão geral de drawables
    • Visão geral de drawables vetoriais
    • Como gerenciar bitmaps
    • Como selecionar cores com a API Palette
    • Como reduzir tamanhos de download de imagens
    • Aceleração de hardware
    • OpenGL ES
    • Como exibir gráficos com OpenGL ES
      • Visão geral
      • Como criar um ambiente OpenGL ES
      • Como definir formas
      • Como desenhar formas
      • Como aplicar projeção e visualizações de câmera
      • Como adicionar movimento
      • Como responder a eventos de toque
    • Renderização
      • Visão geral
      • Como reduzir overdraw
      • Hierarquias de desempenho e visualização
      • Como fazer análise com perfil de renderização de GPU
    • Melhoria de gráficos com amplo conteúdo de cores
  • Áudio e vídeo
    • Visão geral de áudio e vídeo
    • Controles de mídia
    • Formatos de mídia compatíveis
    • Codecs de mídia
    • Arquitetura de apps de mídia
      • Visão geral da arquitetura de apps de mídia
      • Como usar uma sessão de mídia
      • Como criar um app de áudio
        • Visão geral do app de áudio
        • Como criar um serviço de navegador de mídia
        • Como criar um cliente de navegador de mídia
        • Callbacks de sessão de mídia
        • Como usar o app de teste do controlador de mídia
      • Como criar um app de vídeo
        • Visão geral do app de vídeo
        • Como criar atividade de um player de vídeo
        • Callbacks de sessão de mídia
      • Como responder aos botões de mídia
      • Como gerenciar alterações na saída de áudio
      • Como gerenciar a seleção de áudio
    • O Google Assistente
      • O Google Assistente e os apps de mídia
      • Apps de mídia no modo carro do Google Assistente
    • Como fazer o roteamento entre dispositivos
      • Visão geral do roteamento
      • Visão geral do MediaRouter
      • Visão geral do MediaRouteProvider
    • Controlar amplitude com VolumeShaper
    • Visão geral do MediaPlayer
    • Visão geral do MediaRecorder
    • ExoPlayer
    • Como compartilhar entradas de áudio
    • Captura de reprodução
    • Frame rate
    • Outros recursos para mídia
  • Serviços
    • Visão geral
    • Serviços em primeiro plano
    • Serviços vinculados
    • Visão geral da AIDL
  • Tarefas em segundo plano
    • Visão geral
    • Linhas de execução em segundo plano
    • Otimizações em segundo plano
    • Transmissões
      • Visão geral
      • Exceções da transmissão implícita
    • Gerenciar estado de ativação do dispositivo
      • Visão geral
      • Manter o dispositivo ativado
      • Programar alarmes recorrentes
  • Permissões
    • Visão geral
    • Avaliar se o app precisa de permissões
    • Declarar permissões do app
    • Solicitar permissões do app
    • Práticas recomendadas de permissões do app
    • Permissões usadas somente em gerenciadores padrão
    • Restringir interações com outros apps
    • Definir permissões personalizadas
  • Dados e arquivos do app
    • Visão geral
    • Visão geral do armazenamento
    • Salvar no armazenamento específico do app
    • Salvar no armazenamento compartilhado
      • Visão geral
      • Mídia
      • Documentos e outros arquivos
      • Conjuntos de dados
    • Gerenciar todos os arquivos em um dispositivo de armazenamento
    • Salvar dados chave-valor
    • Salvar dados em um banco de dados local
      • Visão geral
      • Definir dados usando entidades
      • Acessar dados com DAOs
      • Definir relações entre objetos
      • Criar consultas DAO assíncronas
      • Criar visualizações em um banco de dados
      • Preencher automaticamente seu banco de dados
      • Migrar seu banco de dados
      • Testar e depurar seu banco de dados
      • Referenciar dados complexos
      • Migrar de SQLite para Room
      • Salvar dados usando o SQLite
    • Casos de uso e práticas recomendadas de armazenamento
    • Como compartilhar dados simples
      • Visão geral
      • Como enviar dados simples para outros apps
      • Como receber dados simples de outros apps
    • Como compartilhar arquivos
      • Visão geral
      • Como configurar o compartilhamento de arquivos
      • Como compartilhar um arquivo
      • Como solicitar um arquivo compartilhado
      • Como recuperar informações de arquivos
    • Como compartilhar arquivos com NFC
      • Visão geral
      • Como enviar arquivos para outro dispositivo
      • Como receber arquivos de outro dispositivo
    • Como imprimir arquivos
      • Visão geral
      • Como imprimir fotos
      • Como imprimir documentos HTML
      • Como imprimir documentos personalizados
    • Provedores de conteúdo
      • Visão geral
      • Fundamentos do provedor de conteúdo
      • Como criar um provedor de conteúdo
      • Abrir arquivos com o framework de acesso ao armazenamento
      • Criar um provedor de documentos personalizado
    • Local da instalação do app
  • Dados e identidade do usuário
    • Visão geral
    • Adicionar fluxo de trabalho de login
    • Mostrar caixa de diálogo de autenticação biométrica
    • Estrutura de preenchimento automático
      • Visão geral
      • Otimizar seu app para o preenchimento automático
      • Criar serviços de preenchimento automático
      • Integrar o preenchimento automático com teclados
    • Auditar o acesso a dados
    • Receber um ID de publicidade que pode ser redefinido pelo usuário
    • Visão geral do provedor de agenda
    • Provedor de contatos
      • Visão geral
      • Como recuperar uma lista de contatos
      • Como recuperar detalhes de um contato
      • Como modificar contatos com intents
      • Como exibir o selo de contatos rápidos
    • Transferência de conta
    • Backup de dados
      • Visão geral
      • Backup de dados do usuário
      • Backup de pares de chave-valor
      • Testar backup e restauração
    • Práticas recomendadas para identificadores exclusivos
    • Memorizar e autenticar usuários
      • Visão geral
      • Lembrar do usuário
      • Autenticar para os serviços OAuth2
      • Criar um tipo de conta personalizado
  • Localização do usuário
    • Visão geral
    • Solicitar permissões de localização
    • Ver o último local conhecido
    • Mudar configurações de localização
    • Solicitar atualizações de localização
    • Acessar a localização em segundo plano
    • Criar e monitorar fronteiras geográficas virtuais
    • Detectar quando usuários iniciam uma atividade
    • Otimizar localização para a bateria
    • Migrar para APIs de local e contexto
    • Adicionar mapas
  • Toque e entrada
    • Visão geral
    • Eventos de entrada
    • Como usar gestos de toque
      • Visão geral
      • Detectar gestos comuns
      • Rastrear movimentos de toque e ponteiro
      • Fazer uma animação para um gesto de rolagem
      • Compatibilidade com gestos de navegação
      • Gerenciar gestos com vários toques
      • Arrastar e dimensionar
      • Gerenciar eventos de toque em um ViewGroup
    • Como gerenciar entradas do teclado
      • Visão geral
      • Como especificar o tipo de método de entrada
      • Como gerenciar a visibilidade do método de entrada
      • Compatibilidade com navegação por teclado
      • Como gerenciar ações do teclado
    • Compatibilidade com controladores de jogos
      • Visão geral
      • Como gerenciar ações do controlador
      • Compatibilidade com controladores em diversas versões do Android
      • Compatibilidade com vários controladores de jogos
    • Editores de método de entrada
      • Como criar um método de entrada
      • Teclado de imagens
    • Corretor ortográfico
  • CameraX
    • Visão geral
    • Arquitetura do CameraX
    • Configuração
    • Visualizar
    • Analisar imagens
    • Captura de imagem
    • Extensões do fornecedor
    • Saída de transformação
    • Rotações de caso de uso
    • Dispositivos CameraX
  • Camera2
    • Visão geral
    • Sessões e solicitações de captura da câmera
    • Enumeração da câmera
    • Usar simultaneamente diversos fluxos de câmera
    • API Multi-Camera
  • Camera
    • Visão geral
    • Como tirar fotos
    • Como gravar vídeos
    • Como controlar a câmera
    • API da câmera
  • Sensores
    • Visão geral
    • Visão geral dos sensores
    • Sensores de movimento
    • Sensores de posição
    • Sensores de ambiente
    • Medições GNSS brutas
  • Conectividade
    • Visão geral
    • Como fazer operações de rede
      • Visão geral
      • Conectar-se à rede
      • Gerenciar o uso da rede
      • Como ler o estado da rede
      • Otimizar o uso de dados de rede
      • Analisar dados XML
    • Transmitir dados de rede com a Volley
      • Visão geral
      • Enviar uma solicitação simples
      • Configurar RequestQueue
      • Fazer um pedido padrão
      • Implementar uma solicitação personalizada
    • Realizar operações de rede com a Cronet
      • Visão geral
      • Enviar uma solicitação simples
      • Ciclo de vida da solicitação da Cronet
      • Referência
        • org.chromium.net
          • Visão geral
          • CallbackException
          • CronetEngine
            • Visão geral
            • CronetEngine.Builder
              • Visão geral
              • LibraryLoader
          • CronetException
          • InlineExecutionProhibitedException
          • NetworkException
          • QuicException
          • UploadDataProvider
          • UploadDataProviders
          • UploadDataSink
          • UrlRequest
            • Visão geral
            • Builder
            • Callback
            • Status
            • StatusListener
          • UrlResponseInfo
            • Visão geral
            • HeaderBlock
    • Aprimorar os apps com 5G
    • Criar aplicativos cliente-servidor com gRPC
    • Transferência de dados sem consumo de bateria
      • Visão geral
      • Otimizar downloads para um acesso de rede eficiente
      • Minimizar o efeito de atualizações regulares
      • Evitar downloads redundantes
      • Modificar padrões com base no tipo de conexão
    • Reduzir consumo de bateria por rede
      • Visão geral
      • Coleta de dados de tráfego de rede
      • Análise do tráfego de dados
      • Como otimizar o uso de rede iniciado por usuário
      • Como otimizar o uso de rede iniciado por app
      • Como otimizar o uso de rede iniciado por servidor
      • Como otimizar o uso geral de rede
    • Transferir dados com adaptadores de sincronização
      • Visão geral
      • Criar um stub de autenticação
      • Criar um stub de provedor de conteúdo
      • Criar um adaptador de sincronização
      • Executar um adaptador de sincronização
    • Bluetooth
      • Visão geral
      • Visão geral do Bluetooth de baixa energia
      • Usar o Bluetooth de baixa energia
    • NFC
      • Visão geral
      • Fundamentos da NFC
      • NFC avançada
      • Visão geral da emulação de cartão com base em host
    • Telecomunicações
      • Visão geral
      • Criar um app de chamadas
      • Evitar spoofing de identificador de chamadas
      • Códigos de telefonia
    • Wi-Fi
      • Visão geral da busca por Wi-Fi
      • Wi-Fi ponto a ponto
      • Visão geral do Wi-Fi Aware
      • Local de Wi-Fi com RTT
      • Ponto de acesso somente local
      • Pareamento de dispositivo complementar
      • Infraestrutura de Wi-Fi
        • Visão geral da infraestrutura de Wi-Fi
        • API Wi-Fi suggestion para conexão de Internet
        • API Wi-Fi Network Request para conectividade ponto a ponto
        • Passpoint
        • Salvar configurações Passpoint e redes
    • USB
      • Visão geral
      • Visão geral do acessório
      • Visão geral do host
    • VPN
    • Visão geral do protocolo de início de sessão
    • Descobrir e conectar
      • Visão geral
      • Usar a descoberta de serviços de rede
      • Criar conexões P2P com o Wi-Fi
      • Usar o Wi-Fi P2P para descoberta de serviços
      • Wi-Fi Easy Connect
    • Compatibilidade do leitor com a API Open Mobile
  • RenderScript
    • Visão geral
    • RenderScript avançado
    • Referência da API Runtime
      • Visão geral
      • Tipos numéricos
      • Tipos de objeto
      • Funções de conversão
      • Constantes e funções matemáticas
      • Funções matemáticas de vetores
      • Funções de matriz
      • Funções de quaternion
      • Funções de atualização atômicas
      • Funções e tipos de tempo
      • Funções de acesso a dados de alocação
      • Funções de características de objetos
      • Funções e tipos de invocação de kernel
      • Funções de entrada/saída
      • Funções de depuração
      • Funções e tipos de gráfico
      • Índice
  • Conteúdo na Web
    • Visão geral
    • Como criar apps da Web no WebView
    • Como gerenciar objetos do WebView
    • Escurecer conteúdo da Web
    • Privacidade do usuário nos relatórios de falha do WebView
    • Migração do WebView para o Android 4.4
    • Compatibilidade com diferentes telas em apps da Web
    • Como depurar apps da Web
    • Práticas recomendadas para apps da Web
  • Android App Bundles
    • Visão geral
    • Envio de recursos do Google Play
      • Visão geral
      • Configurar o módulo base
      • Configurar a entrega no momento da instalação
      • Configurar a entrega sob demanda
      • Práticas recomendadas de entrega sob demanda
      • Configurar entrega instantânea
      • Configurar entrega condicional
    • Play Asset Delivery
      • Visão geral
      • Criar para conteúdo nativo ou Java
      • Criar para Unity
      • Direcionar formatos de compactação de textura
    • Testar o pacote de apps
      • Visão geral
      • Instalações do módulo de teste local
  • Google Play
    • Google Play Faturamento
    • Biblioteca Google Play Core
      • Visão geral
      • Envio de recursos do Google Play
      • Play Asset Delivery
        • Visão geral
        • Integrar a entrega de recursos (Java)
        • Integrar a entrega de recursos (nativo)
        • Integrar a entrega de recursos (Unity)
        • Testar a entrega de recursos
      • Avaliações no app
        • Visão geral
        • Integrar usando Kotlin ou Java
        • Integrar usando código nativo
        • Integrar usando o Unity
        • Testar avaliações no app
      • Compatibilidade com atualizações no app
      • Instalações do módulo de teste local
      • Termos de Serviço
    • Google Play Instant
      • Visão geral do Google Play Instant
      • Primeiros passos com apps instantâneos
        • Criar um pacote de apps instantâneo
        • Práticas recomendadas de UX para apps
      • Primeiros passos com jogos instantâneos
        • Visão geral
        • Plug-in do Unity
        • Práticas recomendadas de UX para jogos
        • Migrar para o Android App Bundles
        • Implementar entrega de recursos na nuvem
        • Suporte para Serviços relacionados a jogos do Google Play
        • Jogos instantâneos do Google Play
        • Lista de verificação para jogos instantâneos do Google Play
      • Reduzir o tamanho do seu jogo ou app instantâneo
      • Adicionar anúncios ao seu jogo ou app instantâneo
      • Disponibilizar vários pontos de entrada
      • Integrar com o Firebase
        • Adicionar o Google Analytics para Firebase ao seu app instantâneo
        • Usar o Firebase Dynamic Links com apps instantâneos
      • Lista de verificação dos requisitos técnicos
      • Política do Google Play Instant
      • Recursos
        • Referência
        • Exemplos de código
        • Notas da versão do SDK
        • Intents de app instantâneo
      • Suporte
        • Problemas conhecidos
        • StackOverflow
    • API Google Play Developer
    • Arquivos de expansão do APK
    • Licenciamento do app
      • Visão geral
      • Visão geral do licenciamento
      • Como configurar para licenciamento
      • Adicionar verificação do servidor
      • Adicionar verificação do cliente
      • Referência do licenciamento
    • Referência de instalação do Google Play
      • Visão geral
      • Biblioteca Play Install Referrer
        • Visão geral
        • Referência
        • Notas da versão
      • API Play Install Referrer
  • Ações no app
  • Slices
    • Visão geral
    • Primeiros passos
    • Modelos Slice
  • Jogos
  • Desenvolver
    • Visualizações do desenvolvedor
    • Criar seu jogo no Unity
    • Criar seu jogo no Unreal
    • Criar uma experiência de login perfeita
    • Determinar a necessidade de acesso a dados confidenciais
    • Proteger seu jogo
    • Desenvolver jogos para todas as telas
    • Saiba mais sobre renderização de loops de jogos
  • Otimizar
    • Ferramentas para otimizar seu jogo
    • Criar compatibilidade com arquiteturas de 64 bits
    • Melhorar o desempenho do seu jogo
    • Gerenciar a memória em jogos de forma eficiente
    • Detectar e diagnosticar falhas
    • Identificar pontos críticos da CPU
    • Implementar o SDK para jogos do Android
      • Visão geral
      • Notas da versão
      • Conseguir um ritmo adequado de frames
        • Visão geral
        • Renderizadores de OpenGL
          • Integrar
          • Atualizar configurações de compilação
          • Adicionar funções de ritmo de frame
          • Verificar a melhoria de ritmo de frame
        • Renderizadores de Vulkan
          • Integrar
          • Atualizar configurações de compilação
          • Adicionar funções de ritmo de frame
          • Verificar a melhoria de ritmo de frame
      • Otimizar o frame rate
        • Visão geral
        • Integração de mecanismo personalizado
          • Visão geral
          • Executar o app de demonstração
          • Ativar a API
          • Atualizar configurações de compilação
          • Definir anotações, parâmetros de fidelidade e configurações
          • Adicionar funções de tempo para a renderização do frame
          • Adicionar funções para gravação do tempo de carregamento
          • Validar, empacotar e publicar o APK
          • Resolver erros comuns
          • Uso avançado
        • Integração com o Unity
          • Visão geral
          • Ativar a API
          • Integrar o plug-in
          • Inicializar a biblioteca e verificar a operação
          • Definir anotações, parâmetros de fidelidade e níveis de qualidade
          • Adicionar funções para gravação do tempo de carregamento
          • Executar o app de monitoramento
          • Analisar e publicar
          • Resolver erros comuns
      • Incorporar áudio de alto desempenho
        • Visão geral
        • Atualizar configurações de compilação
        • Usar o Oboe
        • Exemplos de código
        • Guia completo do Oboe
      • Referência
        • Biblioteca Frame Pacing
          • Visão geral
          • Módulos
          • Ferramentas comuns do Swappy
          • Swappy para OpenGL
          • Swappy para extras do OpenGL
          • Swappy para Vulkan
          • Estruturas
          • SwappyStats
          • SwappyThreadFunctions
          • SwappyTracer
          • SwappyVkFunctionProvider
        • Biblioteca Performance Tuner
          • Mecanismo personalizado
            • Visão geral
            • Módulos
            • Utilidades de cache do Tuning Fork
            • Utilidades extras do Tuning Fork
            • Interface principal do Tuning Fork
            • Estruturas
            • TuningFork_CProtobufSerialization
            • TuningFork_Cache
            • TuningFork_LoadingTimeMetadata
            • TuningFork_MetricLimits
            • TuningFork_Settings
          • Unity
            • Visão geral
            • Classes
            • AndroidPerformanceTuner< TFidelity, TAnnotation >
            • LoadingTimeMetadata
            • Result< T >
            • Estruturas
            • MetricLimits
            • Namespaces
            • Google
            • Google.Android
            • Google.Android.PerformanceTuner
    • Reduzir o tamanho do jogo
    • Gráficos de perfil
    • Depurar uso de memória nativa
  • Iniciar e iterar
    • Lançar seu jogo no Google Play
    • Criar um Android App Bundle no Unity
    • Incluir compatibilidade com o acesso instantâneo
    • Manter a conexão com sua base de usuários
  • Práticas recomendadas
  • Injeção de dependência
    • Visão geral
    • Injeção manual de dependência
    • Injeção de dependência com Hilt
    • Hilt em apps com vários módulos
    • Integrações de Hilt e Jetpack
    • Guia de teste do Hilt
    • Folha de referência de anotações para Hilt e Dagger
    • Dagger
      • Princípios básicos do Dagger
      • Como usar o Dagger em apps para Android
      • Como usar o Dagger em apps de vários módulos
  • Teste
    • Visão geral
    • Conceitos básicos de testes
    • Configurar projeto
    • Como criar testes de unidade eficazes
      • Visão geral
      • Como criar testes de unidade locais
      • Como criar testes de unidade com instrumentação
    • Como automatizar testes de IU
      • Visão geral
      • Como testar a IU para um único app
      • Como testar a IU para vários apps
    • Como testar as integrações de componentes do app
      • Visão geral
      • Como testar seu serviço
      • Como testar o provedor de conteúdo
    • Como testar o desempenho da IU
    • Espresso
      • Visão geral
      • Instruções de configuração
      • Noções básicas
      • Receitas
      • Multiprocesso
      • Verificação de acessibilidade
      • Listas
      • Intents
      • Web
      • Recurso inativo
      • Folha de referência
      • Outros recursos
    • IU Automator
    • Rastreador de apps
    • Regras do JUnit4
    • AndroidJUnitRunner
    • Notas da versão
    • Outros recursos
  • Desempenho
    • Visão geral
    • Android vitals
      • Visão geral
      • Wake locks parciais travados
      • Ativações excessivas
      • Verificações excessivas de Wi-Fi em segundo plano
      • Uso excessivo da rede em segundo plano
      • ANRs
      • Falhas
      • Renderização lenta
      • Frames congelados
      • Permissões negadas
      • Tempo de inicialização do app
    • Intervalos de "App em espera"
    • Visão geral de processos e linhas de execução
    • Melhoria no desempenho pelas linhas de execução
    • Como otimizar a duração da bateria
      • Visão geral
      • Otimizar para o Soneca e o App em espera
      • Monitorar o nível de bateria e o estado de carregamento
      • Monitorar o status da conectividade e a medição da conexão
      • Determinar e monitorar o estado e o tipo de encaixe na base
      • Restrições do gerenciamento de energia
      • Perfil de uso da bateria com o Batterystats e o Battery Historian
      • Analisar o consumo de energia com o Battery Historian
      • Como testar problemas relacionados à energia
    • Reduzir o tamanho do app
    • Gerenciar memória
      • Visão geral do gerenciamento de memória
      • Alocação de memória nos processos
      • Gerenciar a memória do seu app
    • Rastreamento do sistema
      • Visão geral
      • Capturar um trace da linha de comando
      • Capturar rastros em um dispositivo
      • Navegar em um relatório
      • Definir eventos personalizados
    • Inspecionar renderização da GPU
    • Como criar um projeto impecável
    • Como manter seu app responsivo
    • SMP Primer para Android
    • Como verificar o comportamento do app no Android Runtime (ART)
  • Acessibilidade
    • Visão geral
    • Criar e testar apps para acessibilidade
      • Tornar os apps mais acessíveis
      • Princípios para melhorar a acessibilidade do app
      • Testar a acessibilidade do seu app
    • Tópicos avançados
      • Tornar visualizações personalizadas mais acessíveis
      • Criar seu próprio serviço de acessibilidade
    • Outros recursos
  • Privacidade
    • Práticas recomendadas de privacidade
  • Segurança
    • Práticas recomendadas para segurança de apps
    • Dicas de segurança
    • Segurança com dados
    • Segurança com dados em outras versões do Android
    • Segurança com HTTPS e SSL
    • Configurações de segurança de rede
    • Como atualizar seu provedor de segurança para se proteger contra explorações de SSL
    • Como se proteger contra ameaças de segurança com SafetyNet
      • Visão geral
      • API SafetyNet Attestation
      • API SafetyNet Safe Browsing
      • API SafetyNet reCAPTCHA
      • API SafetyNet Verify Apps
    • Criptografia
    • Sistema de armazenamento de chaves do Android
    • Como verificar pares de chaves protegidos por hardware com confirmação de chaves
    • Confirmação protegida pelo Android
    • Compatibilidade com inicialização direta
    • Código DEX incorporado em execução
    • Programa de melhoria da segurança dos aplicativos
  • Criar para bilhões
    • Visão geral
    • Conectividade
    • Capacidade do dispositivo
    • Custo de dados
    • Consumo de bateria
    • IU e conteúdo
  • Desenvolvimento para empresas
    • Visão geral
    • Guia do desenvolvedor
    • Perfis de trabalho
    • Definir configurações gerenciadas
    • Feedback do app
      • Enviar feedback do app para EMMs
      • Feedback do app de teste
    • Contatos de trabalho
    • Políticas de gerenciamento de dispositivos
    • Gerenciamento de dispositivos
      • Visão geral
      • Criar um controlador de política de dispositivo
      • Dispositivos dedicados
        • Visão geral
        • Bloquear modo tarefa
        • Vários usuários
        • Manual
      • Controle do dispositivo
      • Rede e telefonia
      • Segurança
      • Atualizações do sistema
      • Registro de atividades de rede
    • Versões do Android
      • Visão geral
      • Android 11
      • Android 10
      • Android 9
      • Android 8.0
      • Android 7.0
    • Administração do dispositivo
  • Desenvolvedores Android
  • Documentos
  • Guias

Sensores

Use sensores no dispositivo para adicionar recursos avançados de localização e movimento ao app, desde GPS ou local da rede até acelerômetro, giroscópio, temperatura, barômetro e muito mais.

Documentação

  • Visão geral dos sensores
  • Sensores de movimento
  • Sensores de posição
  • Sensores de ambiente
  • Medições GNSS brutas

Vídeos

Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Last updated 2019-12-27 UTC.

  • WeChat WeChat
    Siga o Google Developers no WeChat
  • Twitter Twitter
    Siga @AndroidDev no Twitter
  • YouTube YouTube
    Confira o Android Developers no YouTube
  • Mais sobre o Android

    • Android
    • Enterprise
    • Segurança
    • Source
  • Suporte

    • Reportar bug na plataforma
    • Reportar bug na documentação
    • Google Play support
    • Participar de estudos de pesquisa
  • Documentação

    • Guias do desenvolvedor
    • Guias de design
    • Referência da API
    • Amostras
    • Android Studio
Google Developers
  • Android
  • Chrome
  • Firebase
  • Google Cloud Platform
  • Todos os produtos
  • Privacidade
  • Licença
  • Diretrizes da marca
  • ICP证合字B2-20070004号
  • Receber notícias e dicas por e-mail Inscrever-se