Inicialização do Scanner:
- Para utilizar o Scanner do dispositivo, após a importação das bibliotecas necessárias, importe o pacote do Scanner no arquivo onde seu uso será implementado:
import com.elgin.e1.Scanner.*;
Nota: O Scanner deve ser chamado a partir de uma classe que herda Activity ou alguma de suas classes herdeiras, como AppCompatActivity.
- Em seguida, crie uma Intent para receber o retorno da função getScanner da classe Scanner, do pacote importado, passando como parâmetro o Context da classe que chama a função:
Intent in = Scanner.getScanner(MainActivity.this);
// MainActivity e' a classe que chama getScanner, neste exemplo
O retorno de getScanner é uma Intent responsável em chamar a tela do Scanner, que no exemplo acima é passado à Intent in.
- Depois, execute a Intent recebida de getScanner:
startActivityForResult(in, 1);
A linha acima executa a Intent com o código de requisição #1.
Esse código identifica a Intent inicializada, para que a classe/atividade que a executou possa recuperar os dados retornados (neste caso, os dados de leitura do Scanner) depois que a Intent for encerrada.
- Por fim, para obter os dados retornados, sobrescreva o método onActivityResult, que é chamado sempre que a classe/atividade implementada receber os dados das Intents que ela executou.
Nesse método, verifique se o código de requisição da Intent que retornou os dados é 1 (ou o valor usado em startActivityForResult). Essa verificação é opcional se a classe/atividade implementada não receber dados de nenhuma outra Intent.
Depois de verificar se a Intent que enviou os dados é aquela que chamou a tela do Scanner, verifique se o código de resultado vale #2. Se esse código valer 2, então a Intent foi executada com sucesso; caso contrário, os dados da leitura do Scanner não estarão disponíveis.
Por fim, se a Intent retornou o valor 2, será possível fazer o tratamento sobre os dados lidos pelo Scanner:
String[] result = data.getStringArrayExtra("result");
Consulte Retorno para informações sobre os dados retornados.