2011-10-19 2 views
3

AVRCP 공급 업체 종속 또는 통과 명령을 사용하여 다른 Bluetooth 장치와 통신하고 싶습니다. 사용 가능한 API에서 안드로이드 응용 프로그램에서 이러한 호출을 수행 할 수있는 방법이없는 것 같습니다. 가능한지 여부와 가능한 경우 어떻게 수행 할 수 있는지에 대해 조언 할 수 있습니까?블루투스 AVRCP 벤더에 의존하고 앱에서 통과 명령을 보내는 방법은 무엇입니까?

답변

4

당신이해야 할 일은 직접 가서 BlueZ 블루투스 스택의 HCI 레이어와 이야기하는 것입니다. 사용자 공간에서 할 수있는 D-Buss 데몬을 통해이 작업을 수행 할 수 있습니다. 다음으로 ARVCP 사양 (예 : 1.0)을 사용하지만 Bluetooth SIG AVRCP 1.3 또는 1.4 사양에서도 찾을 수 있으며 명령 구문 분석을 시작할 수 있습니다. 이 프레젠테이션은 도움이 될 것입니다 : Android Bluetooth Introduction 및이 stackoverflow question. 당신이 블루투스 호환 문제 Bluetooth 장치 사이의 가장 일반적인 문제에 직면처럼

enter image description here

+0

를? –

+0

@ValentinGalea 그렇다면 일반 사용자가 왜 이런 식으로해야할까요? 만약 내가 벤더가된다면 나는 이것을 막아 버렸을 것이다. 그러나 솔직히 AVRCP 프로파일은 Android와 함께 제공되어야합니다. – garzanti

1

는 것 같습니다. 블루투스 프로파일은 오디오 관련 동작을 엄격하게 정의하지 않기 때문에 다른 제조업체에서 구현 한 다양한 동작이이 문제를 이끌 것입니다. 그렇기 때문에 모든 블루투스 장치가 블루투스 호환 테스트를 통과해야합니다. 그러나 모든 문제를 해결할 수는 없습니다.

블루투스 프로토콜 스택의 오픈 소스 구현으로 Blue Z는 내 마음과 Bluetooth 장치의 비정상적인 동작에도 문제가되지 않습니다. PTS (profile tuning suite)와 같은 몇 가지 테스트 도구가 있다면, 그것을 사용하여 문제의 어느 부분을 이끌어 내는지 알아보십시오. 프로필 측면에서 모든 것이 정상이라면, 그것은 좋은 소식입니다. 문제는 관련 응용 프로그램의 일부 버그로 이어질 수 있습니다. 프로필 통신에 문제가있는 경우 API 레벨을 수정할 수 없다는 것을 의미합니다. 프로필 스택에 일부 더러운 작업이 필요할 수 있으며 휴대 전화 제조업체 인 경우 문제를 해결할 수 있습니다. 문제가 해결되지 않으면 문제를 해결할 수 있습니다. 둘 다.

+0

AVRCP 안드로이드 문제는 호환성 문제가 아니며, 안드로이드의 첫 번째 릴리스가 완료되었을 때 BlueZ 블루투스 스택에 구현되지 않았기 때문에 존재하지 않습니다. 나중에 그것은 AVRCP 1.0과 올해에만 AVRCP 1.3 구현되었습니다. 가능한 해결 방법에 대한 질문이었습니다. – garzanti