맞춤 액세서리

Android용 액세서리는 키보드, 온도계, 로봇, 조명 제어 등 어떤 것도 될 수 있습니다. 모든 Android 액세서리는 어떤 식으로든 Android 기기에 연결되므로 액세서리를 만들 때 액세서리가 사용할 연결 유형을 고려해야 합니다. 이 페이지에서는 Android 액세서리를 연결하는 옵션과 시작하는 데 도움이 되는 리소스 목록을 간략하게 소개합니다.

USB를 통해 연결

USB 케이블을 통해 Android 기기에 연결하는 액세서리는 액세서리가 USB를 통해 Android 기기와 통신하는 방법을 지정하는 Android Open Accessory(AOA) 프로토콜을 지원해야 합니다. Android 기기의 저전력 출력으로 인해 AOA에서는 액세서리가 USB 호스트 역할을 해야 합니다. 즉, 연결 액세서리가 버스에 전원을 공급해야 합니다.

AOA에는 서로 다른 유형의 통신을 지원하는 두 가지 버전이 있습니다.

  • AOAv1. 일반 액세서리 통신 및 adb 디버깅을 지원합니다.
  • AOAv2. 인간 인터페이스 기기(HID) 기능을 지원합니다. Android 4.1(API 수준 16) 이상에서 사용할 수 있습니다.

일반 액세서리 프로토콜을 사용하여 adb 또는 오디오 프로토콜이 아닌 액세서리와 통신하는 경우 USB 액세서리의 연결을 감지하고 통신을 설정할 수 있는 Android 앱을 제공해야 합니다.

다음 단계

USB 연결을 사용하는 Android 액세서리를 빌드하려면 다음 단계를 따르세요.

  • 하드웨어 플랫폼을 선택하거나 USB 호스트 모드를 지원하는 하드웨어 기기를 빌드합니다.
  • AOA 사양을 검토하여 액세서리 하드웨어에 이 프로토콜을 구현하는 방법을 알아봅니다.
  • 일반 데이터 통신 및 오디오 스트리밍에 USB 연결을 사용하여 액세서리를 구현하는 방법을 설명하는 ADK 2012 펌웨어 소스 코드(<adk-src>/adk2012/board/library/ADK2/)를 검토합니다.
  • USB를 통해 액세서리와 통신하는 Android 앱을 빌드하려면 ADK 2012 Android 앱 소스 코드(<adk-src>/adk2012/app/)를 검토합니다.

블루투스를 통해 연결

블루투스 연결을 통해 Android와 연결하는 액세서리는 Simple Serial Protocol(SSP) 및 고급 오디오 전송 프로필(A2DP)과 같이 Android에서 지원하는 연결 프로필을 사용할 수 있습니다. 블루투스를 사용하여 Android 기기와 연결하는 액세서리는 블루투스 통신과 지원되는 연결 프로필 중 하나 이상을 지원해야 합니다.

사용자는 Android 기기에서 블루투스를 사용 설정하고 액세서리와 페어링하여 액세서리를 사용해야 합니다. 데이터 입력, 액세서리와의 인터페이스를 위한 제어 출력과 같은 특수 통신을 처리하는 보조 Android 앱을 제공할 수도 있습니다.

다음 단계

블루투스 연결을 사용하는 Android 액세서리를 빌드하려면 다음 단계를 따르세요.

  • 하드웨어 플랫폼을 선택하거나 블루투스 통신 및 Android 지원 연결 프로필(예: SSP 또는 A2DP)을 지원하는 하드웨어 기기를 빌드합니다.
  • 블루투스 연결을 사용하여 일반 데이터 통신 및 오디오 스트리밍을 구현하는 예가 포함되어 있는 ADK 2012 펌웨어 소스 코드(<adk-src>/adk2012/board/library/ADK2/)를 검토합니다.
  • 블루투스를 통해 액세서리와 통신하는 Android 앱을 빌드하려면 ADK 2012 Android 앱 소스 코드(<adk-src>/adk2012/app/)를 검토합니다.

참고: ADK 2012 소스 코드에는 Texas Instruments CC2564 칩용으로 개발된 오픈소스 블루투스 스택이 포함되어 있지만 표준 호스트/컨트롤러 인터페이스(HCI)를 지원하는 모든 블루투스 칩과도 호환됩니다.