학문
리액트 네이티브 블루투스 통신 값깨짐 현상
리액트 네이티브 앱 안에 블루투스로 기기 데이터값 받아오는 부분이 있는데 데이터 받아오는것까진되는데값이깨져서와요도와주세
55글자 더 채워주세요.
3개의 답변이 있어요!
안녕하세요. 김민규 전문가입니다.
통신상태를 점검할 필요가 있겠습니다.
혹시 다른 기기와 연결했을때도 현상이 동일한지 체크해봤을까요?
1명 평가안녕하세요. 조일현 전문가입니다.
블루투스 기기의 데이터 전송 시 인코딩 방식을 확인할 필요가 있습니다.
데이터를 보내는데 앱에서 이를 제대로 피싱하지 못할 경우 값이 깨져 볼일 수 있습니다.
JSON 포맷인경우 JavaScript 내장 함수인 JSON.parse( ) 를 사용해 수신된 JSON 문자열을 JavaScript 객체로
변환합니다. CSV 포맷인 경우에는 CSV 데이터를 파싱하기 위해서는 별도의 로직을 구현하거나,
관련 라이브러리를 사용할 수 있습니다.
1명 평가안녕하세요. 서종현 전문가입니다.
블루투스 값 꺠짐은 주로 인코딩 문제나 데이터 패킷 단위 처리 오류때문입니다. 기기에서 보내는 데이터가 UTF-8이 아닌경우, Buffer나 base64등으로 정확히 디코딩해야 하며, 수신 버퍼를 조각 처리 없이 한번에 읽도록 구현해야 합니다. react-native-ble-plx사용시 characteristic.value를 정확히 디코딩(atob 또는 Buffer.from(...,'base64'))하고 장치와 통신 프로토콜(데이터 길이, 종료문자 등)을 맞추는게 중요합니다.