블루투스를 통해 Nexus One Android 휴대 전화를 다른 블루투스 Android 휴대 전화에 연결할 수 있습니다. 연결 용 입력 및 출력 스트림을 사용하고 내 요청을 작성하고 응답을 읽을 수 있습니다. 내 애플리케이션은 처리를 위해 실시간 데이터를 사용합니다. 통신을 위해 다른 소켓 (예 : 전용 소켓과 같은 종류)에 두 개의 입출력 스트림을 여는 방법이 있는지 궁금합니다. 그리고 그렇다면 어떻게 그것을 성취 할 수 있습니까? 모든 포인터가 도움이 될 것입니다 ...Android - 하나의 연결에 대해 여러 소켓 (입력 및 출력 스트림) 열기
mmSocket.connect();
공개 무효 연결() 버젼 : API 레벨 원격 장치에 연결하는 5 시도한다.
이 방법은 연결이 끊어 지거나 연결이 끊어 질 때까지 차단됩니다. 예외없이이 메소드가 리턴되면이 소켓은 이제 연결됩니다.
장치 검색이 진행되는 동안 원격 Bluetooth 장치에 대한 새 연결을 만들지 마십시오. 장치 검색은 Bluetooth 어댑터의 중량 절차이므로 장치 연결 속도가 크게 느려집니다. cancelDiscovery()를 사용하여 진행중인 검색을 취소합니다. 검색은 Activity에 의해 관리되지 않지만 시스템 서비스로 실행되므로 응용 프로그램은 직접 검색을 요청하지 않았더라도 항상 cancelDiscovery()를 호출해야합니다.
내 질문은 : 어떻게 두 개의 소켓을 사용하여 연결할 수 있습니까? 위의 함수는 소켓을 사용하여 연결하고 ... 연결 후 다른 소켓에 의해 다른 연결이 끊깁니다 ????
두 번째 입/출력 스트림이 블루투스 장치에 자주 발생하지 않는 명령을 보내고있는 동안 자주 폴링하기 위해 첫 번째 입/출력 스트림을 원합니다. –
그 설명에서 나는 왜 하나 이상의 연결이 필요한지 알지 못합니다. 오래 실행되고 시간이 겹칠 필요가있는 명령이 있습니다. – sandos
내 자주 폴링 스레드가 오래 실행되고 있는데, 자주 실행되지 않는 명령을 실행하기 전에 끊기를 원하지 않습니다. –