인증 준비
- 테스트 기기를 준비합니다.
- Android 기기가 5대 필요합니다.
- 이러한 기기에는 다음이 포함되어야 합니다.
- Android T (13) 하나 이상과 Android S (12) 하나 이상.
- 삼성 1대와 Pixel 1대 이상.
- 예를 들면 다음과 같습니다.
- 1 OnePlus (Android 10)
- 3 삼성 (Android 11, 12, 13).
- Pixel 1대 (Android 13)
- 이러한 기기에는 다음이 포함되어야 합니다.
- 오디오 전환이 없는 기기 1대:
- iPhone, PC, 블루투스 (BT) 지원 노트북 또는 오디오 전환이 사용 중지된 Android 휴대전화
- 블루투스 기기 세부정보 설정에서 오디오 스위치를 사용 중지할 수 있습니다.
- 멀티포인트 (MP) 테스트 사례 2.8에는 테스트 휴대전화 5대 외에도 오디오 전환이 없는 기기가 필요합니다.
- iPhone, PC, 블루투스 (BT) 지원 노트북 또는 오디오 전환이 사용 중지된 Android 휴대전화
- Android 기기가 5대 필요합니다.
- 테스트 휴대전화에서 디버그 알림을 표시하려면 테스트 계정으로 오디오 전환 테스트 그룹에 참여하세요.
- 또한 Google 애널리틱스를 통해 테스트 데이터를 수집할 수 있습니다.
- 모든 Android 기기에 GmsCore 버전
23.xx.xx
이상이 설치되어 있는지 확인합니다.
인증 기준
- 모든 테스트 사례에서 타겟 전환 성공률은 95% 를 초과해야 합니다.
- 전환이 필요한 테스트에서 프로필 연결 및 스위치 활성 상태는 최소 75%의 사례에서 오디오 이벤트를 트리거한 후 3초 이내에 완료되어야 합니다.
테스트 가이드
테스트 대상 기기 (DUT) 준비
- BT 기기가 이전에 테스트 Google 계정에 로그인된 휴대전화와 페어링되지 않았는지 확인합니다.
- 기기가 테스트용 Google 계정에 페어링된 경우 다음을 실행하여 페어링을 삭제합니다.
- 페어링된 기기에서 다음 단계를 따릅니다.
- 블루투스 설정으로 이동합니다.
- '기기 삭제'를 선택합니다.
- 비행기 모드를 켜거나 끕니다.
- 페어링된 기기에서 다음 단계를 따릅니다.
- '기기 자동 저장'이 사용 설정되어 있는지 확인합니다.
- 이 스위치는 기본적으로 사용 중지되어 있습니다.
- 설정 > Google > 기기 > 저장된 기기 (DUT당 하나)에서 이 옵션을 찾을 수 있습니다.
- 블루투스 기기를 페어링 모드로 설정합니다.
- 초기 블루투스 기기 (A)를 페어링합니다.
- 이후의 블루투스 기기를 다른 기기 (B, C, D 등)와 페어링합니다.
- 기기가 테스트용 Google 계정에 페어링된 경우 다음을 실행하여 페어링을 삭제합니다.
범위
- 모든 헤드셋은 오디오 스위치 자체 테스트 템플릿의 다양한 탭에서 테스트를 실행합니다.
- SinglePoint (SP) 모드만 지원하는 헤드셋은 다음을 실행합니다.
- Generic_test 탭입니다.
- MP 모드를 지원하는 헤드셋은 다음을 실행합니다.
- Generic_test 탭입니다.
- Multipoint_only 탭
- SP 모드로 전환할 수 있는 MP 헤드셋은 다음을 실행합니다.
- MP가 사용 중지된 Generic_test 탭입니다.
- MP가 사용 설정된 Generic_test 탭입니다.
- MP가 사용 설정된 Multipoint_only 탭입니다.
자기 계발 및 자가 테스트 보고서 작성
- 모든 테스트 사례를 두 번 이상 실행합니다.
- 테스트는 다음 형식으로 실행해야 합니다.
- 기기 A=Android S (12) + 기기 B=Android T (13)
- 기기 A=Android T (13) + 기기 B=Android S (12)
- 기기 B가 기본 DUT가 됩니다.
- 템플릿 상단의 'Phone' 및 'OS' 입력란에 기기 B의 세부정보를 입력합니다.
테스트 사례 예시:
테스트 휴대전화:
- 기기 1: 삼성 (Android 13)
- 기기 2: Pixel (Android 12 또는 13) 및 기타
실행된 테스트:
- 실행 1. 기기 A=Samsung S10+ (12), 기기 B=Pixel 7 pro (13) 열 D: 휴대전화=Pixel 7 pro, OS=Android 13
- 2를 실행합니다. 기기 A=Pixel 7 Pro (13), 기기 B=Pixel 6(12) 열 E: 휴대전화=Pixel 6, OS=Android 12
자체 테스트 템플릿의 완료된 테스트 예는 다음과 같습니다.
오디오 이벤트:
- 테스트되는 오디오 이벤트 및 권장되는 테스트 앱의 4가지 유형은 다음과 같습니다.
- 통화:
- 내장된 전화 앱
- VoIP: 다음과 같은 모든 VoIP 앱을 사용할 수 있습니다.
- 오디오 전환 테스트 앱
- FB 메신저
- Line
- Google Meet
- Google Meet
- 미디어: 다음과 같은 모든 오디오 플레이어를 지원합니다.
- 오디오 전환 테스트 앱
- YouTube Music
- Apple Music
- Spotify.
- Google 팟캐스트)에 표시되지 않도록 하기
- 게임:
- 오디오 전환 테스트 앱
- 통화:
디버그 정보:
fp-sass-partner-test 그룹에 참여한 후에 알림이 사용 설정됩니다. 예를 들면 다음과 같습니다.
최신 상태 알림:
전환 알림 없음:
- 전환 지연 시간 알림:
지연 시간 측정
- 전환 지연 시간에는 두 가지 유형이 있습니다.
- 연결 해제된 Seeker에 Bluetooth 프로필을 연결합니다.
- 여기에는 모든 SinglePoint 케이스가 포함되며 타겟 Seeker (기기 B)가 연결 해제된 일부 MP 케이스가 포함됩니다.
- 연결된 활성 Seeker를 전환합니다.
- 여기에는 타겟 시커 (기기 B)가 이미 연결된 일부 MP 사례가 포함됩니다.
- 연결 해제된 Seeker에 Bluetooth 프로필을 연결합니다.
- 지연 시간 정보를 가져오는 방법에는 두 가지가 있습니다.
- 모든 지연 시간은 adb 명령어로 덤프할 수 있습니다.
- 자세한 내용은 덤프 지연 시간 섹션을 참고하세요.
- 이 명령어는 하나 이상의 테스트 사례를 완료한 후 지연 시간을 제공하고 기록할 수 있습니다.
- 오디오 전환 테스트 앱 사용
- 타겟 Seeker에서 실행 중인 앱이 전환 후 지연 시간을 표시합니다.
- 스위치가 없는 경우 앱에 '스위치 없음' 이유가 표시됩니다.
- 모든 지연 시간은 adb 명령어로 덤프할 수 있습니다.
오디오 전환 테스트 앱:
- 자체 테스트 중에 앱을 사용하여 VoIP/미디어/게임 오디오 이벤트를 트리거하면 테스트 설정이 간소화되고 시커의 이벤트 지연 시간이 줄어듭니다.
- 버전 1.03은 여기에서 다운로드할 수 있습니다.
- 앱 설치:
- 테스트 휴대전화에 APK를 복사하여 엽니다.
- 또는
adb install audio_test_app.apk
를 사용합니다.
- 알림 액세스를 요청하는 대화상자가 표시되면 다음 안내를 따르세요.
- '확인'을 클릭합니다.
- 앱 목록에서 'FP SASS 테스트'를 선택하세요.
- 알림 액세스를 허용합니다.
앱 개요:
- 대상 제공업체
- 이 버튼을 클릭하면 페어링된 블루투스 기기 목록이 표시됩니다. 테스트할 항목을 선택하세요.
- 연결 및 연결 해제 버튼은 블루투스 설정의 기기 세부정보에 있는 버튼과 같이 작동합니다.
- 현재 상태
- 이 필드는 Seeker가 BLE 광고 또는 이벤트 스트림을 사용하여 제공업체로부터 수신한 마지막 연결 상태를 보여줍니다.
- 오디오 전환 디버그 알림도 여기에 표시됩니다.
- 탐색자 유형
- 이 옵션은 오디오 스트림 간에 기기를 전환하는 데 사용됩니다.
- 오디오 유형
- VoIP
이 모드를 선택하면 오디오 모드가
AudioManager.MODE_IN_COMMUNICATION
로 변경되고AudioManager.startBluetoothSco
를 호출한 다음USAGE_VOICE_COMMUNICATION
로 오디오가 재생됩니다.- 스트림 유형은
STREAM_VOICE_CALL
입니다. - 제공업체 연결 상태가 5초 이내에
CONNECTED_HFP
로 전환되어야 합니다.
- 스트림 유형은
- 미디어
이 모드를 선택하면 AVRCP를 지원하는 오디오가 재생됩니다. 오디오 사용 유형은
USAGE_MEDIA
입니다.- 제공업체 연결 상태가 5초 이내에
CONNECTED_A2DP_WITH_AVRCP
로 전환되어야 합니다. - 시작되거나 중지될 때 연결 상태가 잠시
CONNECTED_A2DP_ONLY
로 전환될 수 있습니다.
- 제공업체 연결 상태가 5초 이내에
- 게임
이 모드를 선택하면 AVRCP를 지원하지 않는 오디오가 재생됩니다. 오디오 사용 유형은
USAGE_GAME
입니다.- 제공업체 연결 상태가 5초 이내에
CONNECTED_A2DP_ONLY
로 전환되어야 합니다.
- 제공업체 연결 상태가 5초 이내에
- 재생 및 중지 버튼
- PLAY 및 STOP 버튼은 오디오를 시작하거나 중지합니다.
- 결과 전환
이 필드에는 연결 및 스위치의 활성 지연 시간이 표시됩니다. 또한 오디오 이벤트가 트리거되었지만 전환이 발생하지 않은 경우 전환을 거부하는 이유도 표시됩니다.
- 지연 시간은 밀리초(ms) 단위로 측정됩니다.
- 일반적으로 지연 시간은 오디오 전환 트리거가 시작된 시점부터 연결된 블루투스 프로필 또는 멀티포인트 전환 알림 이벤트를 수신할 때까지 측정됩니다.
- 공급자 트리거 스위치는 오디오 시작부터 지연 시간을 측정합니다.
덤프 지연 시간
- 다음 명령어를 사용하면 사용자가 수동 테스트를 실행할 때 지연 시간 측정을 캡처할 수 있습니다.
adb shell dumpsys activity service com.google.android.gms/.nearby.discovery.service.DiscoveryService
- 지연 시간 측정값은
NearbyDeviceManager
의SwitchHistory
섹션에 표시됩니다.
- 지연 시간 측정값은
NearbyDeviceManager
Nearby Sass device count: 1
Sass device - address:XX:XX:XX:XX:XX:XX, name:Googler's Pixel Buds, accountKey:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, modelId:6edaf7
SwitchHistory
15:30:21:166 - 15:30:25:201, latency 3035ms, Succeed, SASS_TRIGGERED_CONNECT, SASS switch, A2DP
15:34:58:568 - 15:34:58:568, latency 0ms, Succeed, SWITCH_ACTIVE_TO_SELF, SASS switch, HFP
15:36:26:615 - 15:36:31:603, latency 1988ms, Succeed, SASS_TRIGGERED_CONNECT, SASS switch, A2DP
15:37:56:108 - 15:37:56:250, latency 142ms, Succeed, SWITCH_ACTIVE_TO_SELF, SASS switch, A2DP"
- GmsCore에서 측정할 수 없는 스위치 (예: HFP용 활성 스위치)는 0ms 지연 시간으로 기록됩니다.
로그 패턴 참조:
알려진 문제:
다음은 Seeker로 인해 발생하는 알려진 버그입니다.
- 잘못된 게임 오디오 전환
- 삼성 휴대전화에서는 게임을 플레이할 때 연결 상태가
CONNECTED_A2DP_ONLY
가 아닌CONNECTED_A2DP_WITH_AVRCP
로 설정됩니다. - 일부 게임(예: Candy Crush)은 배경 음악을 재생하여 사용자 입력 없이 새 오디오 이벤트를 트리거할 수 있습니다. 연결된 휴대전화는 게임을 여는 모든 휴대전화에서 오디오를 계속 전환할 수 있습니다.
- 삼성 휴대전화에서는 게임을 플레이할 때 연결 상태가