0.5.1 • Published 5 days ago
react-native-rfid8500-zebra v0.5.1
react-native-rfid8500-zebra
RFID Zebra Reader
Installation
npm install react-native-rfid8500-zebra
Conectando a um dispositivo
import { useEffect } from 'react';
import { PermissionsAndroid } from 'react-native';
import {
useReader,
useDevicesList,
useReaderPermissions,
} from 'react-native-rfid8500-zebra';
function App() {
const { connect } = useReader();
// Lista de dispositivos pareados.
const { devices, updateDevices } = useDevicesList();
const [permission, requestPermission] = useReaderPermissions();
useEffect(() => {
requestPermission().then(async (result) => {
if (result === PermissionsAndroid.RESULTS.GRANTED) {
await updateDevices();
}
});
}, []);
useEffect(() => {
console.log(devices);
// [{"mac": "84:C6:92:41:3C:4B", "name": "RFD850022260520100556"}]
if (devices.length > 0) {
const { name, mac } = devices[0];
connect(name, mac).then((status) => {
if (status) {
// Conectado
} else {
// Erro ao conectar
}
});
}
}, [devices]);
}
Desconectando de um dispositivo
import { useEffect } from 'react';
import { useReader, useDevicesList } from 'react-native-rfid8500-zebra';
function App() {
const { disconnect } = useReader();
useEffect(() => {
disconnect().then((status) => {
if (status) {
// Desconectado
} else {
// Erro ao desconectar
}
});
}, []);
}
Capturando informações do dispositivo
import { useEffect } from 'react';
import { useReader } from 'react-native-rfid8500-zebra';
function App() {
const { deviceDetails } = useReader();
// conecte o dispositivo antes
useEffect(() => {
// Informações do dispositivo conectado
console.log(deviceDetails);
// {
// name: "RFD850022260520100556"
// mac: "84:C6:92:41:3C:4B"
// antennaLevel: 27
// batteryLevel: 80
// }
}, [deviceDetails]);
}
Alterar nível da antena
import { useEffect } from 'react';
import { useReader } from 'react-native-rfid8500-zebra';
function App() {
const { isConnected, setAntennaLevel } = useReader();
// conecte o dispositivo antes
useEffect(() => {
// Altera o nível da antena
// 1 - 30
setAntennaLevel(15).then(() => {
// Atualizado
});
}, [isConnected]);
}
Capturar as etiquetas lidas
import { useEffect } from 'react';
import { useReader, useTags } from 'react-native-rfid8500-zebra';
function App() {
const [tags, clearTags] = useTags();
// conecte o dispositivo antes
useEffect(() => {
console.log(tags);
// [
// "ASDH12358012308ASD",
// "ASDH12358012308ASD",
// "ASDH12358012308ASD",
// ]
// Limpar as tags lidas
clearTags();
}, [tags]);
}
Forçar o leitor a iniciar a leitura
import { useEffect } from 'react';
import { useReader } from 'react-native-rfid8500-zebra';
function App() {
const { isConnected, softRead } = useReader();
// conecte o dispositivo antes
useEffect(() => {
// Forçar leitura
softRead(true).then(() => {
// Iniciou a leitura
});
// Cancelar leitura
softRead(false).then(() => {
// Cancelou a leitura
});
}, [isConnected]);
}
Localizar uma etiqueta através de distancia
import { useEffect } from 'react';
import { useReader, useLocateTag } from 'react-native-rfid8500-zebra';
function App() {
const { isConnected } = useReader();
const { start, stop, isLocateTag, distance } = useLocateTag();
// conecte o dispositivo antes
useEffect(() => {
// Inicia a busca de uma etiqueta
start('ASDH12358012308ASD');
// Para a busca de uma etiqueta
stop();
}, [isConnected]);
useEffect(() => {
if (isLocateTag) {
// Retorna a distância de uma etiqueta.
console.log(distance);
// 0 - 100
}
}, [isLocateTag, distance]);
}
Ler uma etiqueta de cada vez
import { useEffect } from 'react';
import { useReader, useSingleRead } from 'react-native-rfid8500-zebra';
function App() {
const { isConnected } = useReader();
const [tag, setSingleRead] = useSingleRead();
// conecte o dispositivo antes
useEffect(() => {
// Ativa o modo de leitura única
setSingleRead(true);
// Desativa o modo de leitura única
setSingleRead(false);
}, [isConnected]);
useEffect(() => {
console.log(tag);
// "ASDH12358012308ASD"
}, [tag]);
}
Modo código de barra
import { useEffect } from 'react';
import { useReader, useBarCode } from 'react-native-rfid8500-zebra';
function App() {
const { isConnected, setMode } = useReader();
const barCode = useBarCode();
// conecte o dispositivo antes
useEffect(() => {
// Ativa o modo de código de barras
setMode('BARCODE');
// Ativa o modo de RFID
setMode('RFID');
}, [isConnected]);
useEffect(() => {
console.log(barCode);
// "12345678456123 1234567897 4145611321 46546789"
}, [barCode]);
}
Contributing
See the contributing guide to learn how to contribute to the repository and the development workflow.
License
MIT
Made with create-react-native-library
0.5.0
5 days ago
0.5.1
5 days ago
0.4.8
13 days ago
0.4.7
18 days ago
0.4.6
20 days ago
0.4.5
24 days ago
0.4.4
24 days ago
0.4.3
25 days ago
0.4.2
25 days ago
0.3.9
27 days ago
0.4.1
27 days ago
0.4.0
27 days ago
0.3.6-a
1 month ago
0.3.5-b
1 month ago
0.3.7-b
1 month ago
0.3.5-d
1 month ago
0.3.7-a
1 month ago
0.3.6-b
1 month ago
0.3.5-c
1 month ago
0.3.7-d
1 month ago
0.3.5-f
1 month ago
0.3.7-c
1 month ago
0.3.5-e
1 month ago
0.3.7-f
1 month ago
0.3.7-e
1 month ago
0.3.7-g
1 month ago
0.3.0
1 month ago
0.3.6
1 month ago
0.2.7
1 month ago
0.2.6
1 month ago
0.3.8
1 month ago
0.2.9
1 month ago
0.3.7
1 month ago
0.2.8
1 month ago
0.3.2
1 month ago
0.3.1
1 month ago
0.3.4
1 month ago
0.3.3
1 month ago
0.2.1
6 months ago
0.1.2
6 months ago
0.2.0
6 months ago
0.2.3
6 months ago
0.2.2
6 months ago
0.2.5
6 months ago
0.2.4
6 months ago
0.1.1
11 months ago
0.1.0
11 months ago