Controle Camera no Power Apps

Um controle que permite aos usuários tirar fotos usando a câmera de um dispositivo.

Descrição

Use o controle Camera para capturar imagens com a câmera de um dispositivo. O dispositivo deve ter uma câmera e o usuário precisa autorizar o aplicativo a usar a câmera.

Toque ou selecione o controle camera para capturar uma imagem da câmera.

A imagem capturada mais recentemente estará disponível na propriedade Photo. Com essa propriedade, as imagens podem ser:

  • Exibidas com o controle Image. Use o controle Image para exibir a imagem capturada. Para obter mais informações, consulte os exemplos.
  • Colocar temporariamente uma variável ou uma coleção. Use as funções Set ou Collect para armazenar imagens em uma variável ou coleção. Tenha cuidado ao usar várias imagens em uma coleção ao mesmo tempo, pois isso consome a memória limitada do dispositivo. Use as funções SaveData e LoadData para mover imagens para o armazenamento local no dispositivo e para cenários offline.
  • Armazenados em um banco de dados. Use a função Patch para armazenar imagens em um banco de dados.
  • Transmitido como uma cadeia de caracteres de texto codificada em base64. Use a função JSON para codificar imagens em base64.

Use as propriedades Stream, StreamRate e OnStream para capturar imagens automaticamente em um timer; por exemplo, tirar uma foto a cada minuto para criar uma sequência de lapso de tempo.

A mídia capturada é referenciada por uma URI de cadeia de caracteres de texto. Para obter mais informações, leia a documentação do tipo de dados.

Observação

  • O controle camera tem suporte apenas nos navegadores Microsoft Edge, Chrome, Firefox e Opera; e em dispositivos Android e iOS. Todos os outros navegadores e plataformas mostrarão um aviso de que alguns recursos do aplicativo não funcionarão.
  • As imagens geradas pelo controle camera têm resolução máxima de 640 x 480 px. Se precisar de imagens com resolução completa, use o controle Add picture.
  • Dependendo da marca e do modelo do seu dispositivo móvel, a câmera pode levar alguns segundos para inicializar ao usar o controle camera.

Principais propriedades

AvailableDevices – tabela das câmeras disponíveis no dispositivo.

A tabela contém duas colunas:

  • Número de Id a ser usado com a propriedade Camera
  • Nome fornecido pelo dispositivo para identificar a câmera. Algumas plataformas podem incluir Frontal ou Traseira para ajudar a localizar a câmera.

Observação: nem todos os dispositivos da tabela podem ser utilizados no seu aplicativo. Alguns podem ser drivers ou aplicativos especializados destinados a fins específicos.

Camera – a ID numérica da câmera a ser usada. Útil em dispositivos com mais de uma câmera.

OnStream - Ações a serem executadas quando a propriedade Stream é atualizada.

Photo – a imagem capturada quando o usuário faz uma foto.

Stream – imagem atualizada automaticamente com base na propriedade StreamRate.

StreamRate – a frequência para atualizar a imagem na propriedade Stream, em milissegundos. Esse valor pode variar de 100 (1/10 de segundo) a 3.600.000 (1 hora).

Propriedades adicionais

AccessibleLabel — rótulo para leitores de tela. Deve descrever a finalidade de tirar uma foto.

BorderColor – a cor da borda do controle.

BorderStyle – se a borda do controle é Sólida, Tracejada, Pontilhada ou Nenhuma.

BorderThickness – a espessura da borda do controle.

Brightness – quanta luz provavelmente o usuário perceberá em uma imagem.

Contrast – como o usuário pode distinguir facilmente as cores semelhantes em uma imagem.

DisplayMode – se o controle permite a entrada do usuário (Editar), apenas exibe dados (Exibir) ou está desabilitado (Desabilitado).

FocusedBorderColor – a cor da borda do controle quando ele está focalizado.

FocusedBorderThickness – A espessura da borda de um controle quando ele está focalizado.

Height – a distância entre a parte superior do controle e as bordas inferiores.

OnSelect – ações a serem executadas quando o usuário tocar ou clicar em um controle.

TabIndex – ordem de navegação do teclado comparada a outros controles.

Tooltip – texto explicativo exibido quando o usuário passa o mouse sobre um controle.

Visible – se um controle é exibido ou está oculto.

Width – a distância entre as bordas esquerda e direita de um controle.

X – a distância entre a borda esquerda de um controle e a borda esquerda da respectiva tela ou contêiner pai.

Y – a distância entre a borda superior de um controle e a borda superior da tela ou contêiner pai.

Exemplos

Para estes exemplos, você precisará de um dispositivo com uma câmera. Para testar seu aplicativo, use uma webcam acessível no seu navegador. Ou salve seu aplicativo e carregue-o em um dispositivo iOS ou Android com uma câmera.

Exibição simples de uma imagem capturada

  1. Adicione um controle Camera.

  2. Autorize o aplicativo a usar a câmera do dispositivo, se solicitado.

  3. Adicione um controle Image.

  4. Defina a propriedade Image do controle Image com a seguinte fórmula:

    Camera1.Photo
    

    Observação

    Substitua o nome do controle camera Camera1 conforme apropriado.

  5. Pressione F5 para visualizar seu aplicativo.

  6. Tire uma foto selecionando ou tocando no controle da câmera. Você deve ver o resultado no seu controle de imagem.

  1. Adicione um controle Camera, chame-o de MyCamera e defina sua propriedade OnSelect como esta fórmula:

    Collect( MyPix, MyCamera.Photo )
    

    Para obter mais informações:

  2. Pressione F5 e, em seguida, tire uma foto selecionando ou tocando em MyCamera.

  3. Adicione um controle Vertical gallery. Em seguida, redimensione seu controle Image, seu modelo e o próprio controle Image gallery para caber na tela.

  4. Defina a propriedade Items do controle Image gallery como esta fórmula:

    MyPix
    
  5. Defina a propriedade Image do controle Image na galeria como esta fórmula:

    ThisItem.Url
    

    A foto que você tirou aparece no controle Image gallery.

  6. Tire quantas fotos quiser e então volte para o espaço de trabalho padrão ao pressionar Esc.

  7. (opcional) Defina a propriedade OnSelect do controle Image na Image gallery como esta fórmula:

    Remove( MyPix, ThisItem )
    
  8. Pressione F5 e selecione uma imagem para removê-la.

Use a função SaveData para salvar as imagens localmente, ou a função Patch para atualizar uma fonte de dados.

Alterar a câmera ativa a partir de uma lista suspensa

  1. Adicione um controle Camera.

  2. Autorize o aplicativo a usar a câmera do dispositivo, se solicitado.

  3. Adicione um controle Drop down.

  4. Defina a propriedade Items da lista suspensa como:

    Camera1.AvailableDevices
    

    Observação

    Substitua o nome do controle camera Camera1 conforme apropriado.

  5. Defina a propriedade Camera da câmera como:

    Dropdown1.Selected.Id
    

    Observação

    Substitua o nome do controle dropdown Camera1 conforme apropriado.

  6. Pressione F5 e selecione um item no menu suspenso para alterar a câmera.

Diretrizes de acessibilidade

O controle camera mostra o feed da câmera e também funciona como um botão que tira fotos. Dessa forma, há considerações de acessibilidade semelhantes, como com botões.

Alternativas de vídeo

Pense em adicionar uma forma alternativa de entrada para os usuários com deficiências visuais. Por exemplo, Add picture para permitir que os usuários carreguem uma imagem do seu dispositivo.

Contraste de cores

Deve haver contraste de cores adequado entre FocusedBorderColor e a cor externa.

Suporte ao leitor de tela

AccessibleLabel precisa estar presente.

Suporte de teclado

  • TabIndex deve ser zero ou maior para que os usuários de teclado possam navegar para ela.

  • Os indicadores de foco precisam ser evidentes. Use FocusedBorderColor e FocusedBorderThickness para atualizar a visibilidade dos indicadores de foco.

Consulte também

Limitações de controles no Power Apps

Observação

Você pode nos falar mais sobre suas preferências de idioma para documentação? Faça uma pesquisa rápida. (Observe que esta pesquisa está em inglês)

A pesquisa levará cerca de sete minutos. Nenhum dado pessoal é coletado (política de privacidade).