Permissões e teste
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.
Inicie a calculadora, ative o reconhecimento de voz e diga algo simples que será reconhecido.
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.
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.
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.
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".
Volte a ativar a definição e tente novamente. A sua entrada de voz deve ser aceite.
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 área de superfície de uma pirâmide regular é calculada com recurso à assustadora equação acima apresentada. É este o nosso desafio.
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.
Prima =. Obtém a resposta correta, ou seja, 2691,33206221705?
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)
- 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.