Meu plugin minha vida — Lendo QRCode com ZXing

Fala galera,
Eu vejo QRCode , com que frequencia? Todo tempo… 😮
QRCode é, na minha opinião, a forma mais fácil de compartilhar uma informação. Principalmente links e apps.
Hoje vou lhes mostrar uma forma de ler este carinha com Xamarin.Forms.Isto é possível graças ao ZXing.Net (não se lê xing ling :P)
Configurando o plugin
Vamos ao nuget baixar o pacote ZXing.Net.Mobile

Em seguida devemos configurar o plugin em cada plataforma:
No Android devemos adicionar estas configs na MainActivity.cs :
E no IOS no AppDelegate.cs :
Pronto, estamos prontos para utilizar :D
Implementando o ZXing
Vamos criar um botão para chamar a tela de leitura do barcode e um label para receber o retorno:
E no backend vamos implementar :
O Evento ZXingView_BarcodeReaded sera o responsável por retornar o valor do código de barras lido.
Agora vamos criar uma pagina ZXingView.xaml e no BackEnd implementar um popup para os Controles do ZXing :
Rodando!


Basicamente o método OnScanResult ja detecta o barcode, ai chamamos nosso evento BarcodeReaded e retornamos o valor para primeira tela.
Muy loco em?
ZXing e o Netstandard 2.0
ZXing pode não funcionar muito bem no netstandard 2.0, e os desenvolvedores estão corrigindo isso.
Porem existem algumas dicas caso você tenha problemas :
No iOS adicione a linha no infoplist :

Se for android no arquivo AndroidManifest

Edite o seu projeto compartilhado e adicione a linha :

Acredito que isso ajude… Porem fica um Warning, Alguns plugins podem ter problemas com a modificação acima ,então é bom fazer uns testes ;)
ZXing não é limitado apenas a QRCode, você pode ver tudo que ele consegue ler e identificar no repositório oficial
Quem quiser pode baixar o código de exemplo aqui.
Espero ter ajudado!
Aquele abraço!