Permissões e teste

Concluído

A segurança é importante. Quando se utilizam funcionalidades específicas não basta verificar se uma aplicação tem permissões apenas uma vez ao iniciá-la.

A nossa aplicação tem de conseguir responder se um utilizador desativar uma permissão necessária durante a execução da aplicação. Para verificar a funcionalidade da nossa aplicação, vamos desativar seletivamente as duas permissões necessárias durante a utilização da aplicação e garantir que ela responde corretamente.

  1. Inicie a calculadora, ative o reconhecimento de voz e diga algo simples que será reconhecido.

  2. Agora desative a permissão Permitir que as aplicações acedam ao microfone. Para localizar esta definição, escreva "definições de privacidade" na barra de pesquisa do Windows e, em seguida, selecione Microfone nas definições à esquerda.

Turning off microphone input.

  1. Agora prima L e experimente dizer algo. Deve ser-lhe apresentada a mensagem de erro "A permissão para utilizar o dispositivo de captura de áudio foi negada.". Se for o caso, volte a ativar a permissão e tente novamente. O seu texto falado deve ser aceite.

  2. Deixe esta permissão ativada, volte às definições de privacidade e desative o reconhecimento de voz (para aceder a isto, selecione Voz). Em seguida, prima L e experimente introduzir voz.

Turning off speech input.

  1. Deve ser-lhe apresentada a mensagem de erro "A política de privacidade de voz não foi aceite antes de tentar utilizar o reconhecimento de voz".

  2. Volte a ativar a definição e tente novamente. A sua entrada de voz deve ser aceite.

  3. Para procedermos ao nosso último teste, prima L para apresentar a caixa de diálogo Serviço de Escuta. Agora, mude o foco para outra aplicação ou funcionalidade do Windows. Isto deve desativar o reconhecimento de voz e fechar a caixa de diálogo Serviço de Escuta.

É importante que estes testes funcionem. Também pode experimentar fazer outros testes, tais como desligar completamente o microfone (embora a resposta a problemas de hardware não seja um requisito das aplicações, é uma boa experiência de utilizador).

Agora que já confirmámos que as nossas permissões funcionam, vamos ver o que criámos e colocar a nossa aplicação de acessibilidade concluída a funcionar em pleno.

Teste de matemática minucioso

Vamos sujeitar o sistema de reconhecimento de voz a um verdadeiro teste. Se estiver confiante no seu trabalho e nos testes que realizou até agora, pode ignorar este passo. Não estamos a criar nada de novo; estamos apenas a ver que mais podemos fazer.

Vamos considerar esta pirâmide regular.

Pirâmide regular Equação da área de superfície
A regular pyramid. Surface area of a regular pyramid

A área de superfície de uma pirâmide regular é calculada com recurso à assustadora equação acima apresentada. É este o nosso desafio.

  1. Primeiro, introduza-a com recurso ao ponteiro do rato e aos botões. Limpe o cálculo e digite: 20 * 30 + 30 Sqrt ( (20/2) ^ 2 + 40 ^ 2) + 20 Sqrt ( (30/2) ^ 2 + 40 ^ 2). Com a ajuda da narração, um cálculo como este preenche um espaço superior ao da nossa área de apresentação de texto.

  2. Prima =. Obtém a resposta correta, ou seja, 2691,33206221705?

  3. Agora, vamos tentar utilizar o reconhecimento de voz para esta equação. Como o Serviço de Escuta tem limites, deve proferir a equação por partes. Pronuncie as palavras que se seguem de forma clara e por ordem. Corrija potenciais erros à medida que avança ao dizer "delete" ou com recurso à tecla Del. Utilize a tecla L para aceder ao Serviço de Escuta. Não precisa de aguardar até ao cálculo atual ser lido para premir novamente a tecla L.

  • "20 times 30 plus 30 square root open open" (20 vezes 30 mais 30, raiz quadrada, abrir parêntesis, abrir parêntesis)
  • "20 divided by 2 close to the power of 2" (20 a dividir por 2, fechar parêntesis, elevado ao quadrado)
  • "plus 40 to the power of 2 close" (mais 40 elevado ao quadrado, fechar parêntesis)
  • "plus 20 times square root open open" (mais 20 vezes, raiz quadrada, abrir parêntesis, abrir parêntesis)
  • "30 divided by 2 close to the power of 2" (30 a dividir por 2, fechar parêntesis, elevado ao quadrado)
  • "plus 40 to the power of 2 close equals" (mais 40 elevado ao quadrado, fechar parêntesis, igual a)
  1. Obteve 2691,33206221705 como resultado? Nesse caso, criou com sucesso um motor de reconhecimento de voz personalizado.

É divertido, não é? O reconhecimento de voz nunca foi tão pouco frustrante.

Nota

O código que introduziu neste módulo utiliza um algoritmo de correspondência exata e força bruta. Se quiser levar o reconhecimento de voz mais além, experimente investigar algoritmos de correspondência de cadeias, tais como o algoritmo de distância de Levenshtein.

Resumo da unidade

Nesta unidade, ficou a conhecer os pontos fortes e fracos do reconhecimento de voz geral do Windows, implementou código para criar o seu próprio reconhecimento de voz personalizado e ficou a conhecer as melhorias a nível do reconhecimento que acompanham esta abordagem. Além disso, também se deve ter apercebido do quão divertido pode ser.

Agora, vamos resumir o que aprendeu em todo o módulo.