Solução GRATUITA:
Eu tive sucesso com uma fração de uma gota de água ou óleo sobre a lente da câmera no meu ZTE Score. Faz com que os códigos de barras próximos à câmera fiquem em foco e eles leem de maneira confiável. O suficiente para formar uma superfície convexa, mas não tanto que caia.
O ZTE Score tem uma volta suave; Mergulho meu dedo em óleo e, com a lente apontada para cima, toco a parte de trás do telefone onde a lente coloca uma gota de óleo nele. Depois, posso virar o telefone com a face para cima (lente para baixo) e digitalizar códigos de barras. Se a superfície externa da lente da câmera não for plana, isso provavelmente não funcionará, mas funcionou com a minha pontuação ZTE e deve funcionar com a maioria dos telefones low-end (foco fixo).
Um convexo claro de um lado, liso e pegajoso do outro lado, também faria o truque; Lembro-me de ver pés de borracha aderentes que teriam servido bem, mas não os vi e nem tentei.
Eu cansei de fazer isso toda vez que queria ler um código de barras e apenas pedi uma lente macro.
Se os códigos não couberem na tela quando em foco, sua queda será muito grande; sem utilidade.