블루투스 UUID가 의미하는 바를 이해하지 못합니다. UUID는 프로토콜 (예 : RFCOMM )을 나타 냅 니까? 그렇다면 createRfcommSocketToServiceRecord()
이름에 rfcomm을 지정할 때 메서드에 UUID가 필요한 이유는 무엇입니까? BluetoothChat 샘플 코드에 임의의 하드 코딩 된 UUID가있는 이유는 무엇입니까?
내 질문은 이 질문에 따라 4.0.4를 실행하는 장치가 리플렉션을 사용하여 외부, Android가 아닌 장치에 연결하려고 할 때 null 포인터 예외가 발생하기 때문에 발생합니다 . 그러나 그 질문에 대한 해결책은 저에게 효과가 없습니다. UUID muuid = device.getUuids()[0].getUuid();
예외가 발생합니다.
편집 : 이 답변에 따라 직렬 포트 서비스에 대한 UUID를 하드 코딩하여 문제를 해결했습니다 (사용 UUID.fromString("00001101-0000-1000-8000-00805f9b34fb");
).
createInsecureRfcommSocketToServiceRecord(),
리플렉션 방법을 사용하지 않고 보안되지 않은 rfcomm 소켓을 만들기 위해 UUID를 제공해야하는 이유에 대해 더 궁금합니다 .
누구든지 나를 정리할 수 있습니까?