웨어러블 기기에서 스피커 사용

일부 Wear OS 기기에는 스피커가 포함되어 있어서 앱에 사운드 효과를 주고 사용자의 몰입감을 한층 높일 수 있습니다. 스피커가 장착된 Wear 기기에서는 시계나 타이머 알람이 트리거되고 오디오 알림 기능을 제공할 수 있습니다. 시각적 효과와 함께 사운드 효과가 더해진 Wear 기기상의 게임을 더욱더 재밌게 즐길 수 있습니다.

이 페이지에서는 Wear 기기의 앱에서 친숙한 Android API를 사용하여 기기 스피커를 통해 사운드를 재생하는 방법을 설명합니다.

다음 관련 리소스를 참조하세요.

스피커 감지

Wear 앱은 먼저 웨어러블 기기에 스피커가 있는지 감지해야 합니다. 다음 예제에서 앱은 getDevices() 메서드를 FEATURE_AUDIO_OUTPUT 값과 함께 사용하여 기기에 스피커가 장착되어 있는지 확인합니다.

Kotlin

    val packageManager: PackageManager = context.packageManager
    val audioManager = context.getSystemService(Context.AUDIO_SERVICE) as AudioManager

    // Check whether the device has a speaker.
    return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M &&
            // Check FEATURE_AUDIO_OUTPUT to guard against false positives.
            packageManager.hasSystemFeature(PackageManager.FEATURE_AUDIO_OUTPUT)) {
        val devices: Array<AudioDeviceInfo> = audioManager.getDevices(AudioManager.GET_DEVICES_OUTPUTS)
        devices.any { it.type == AudioDeviceInfo.TYPE_BUILTIN_SPEAKER }
    } else {
        false
    }
    

자바

    PackageManager packageManager = context.getPackageManager();
    AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);

    // Check whether the device has a speaker.
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M &&
            // Check FEATURE_AUDIO_OUTPUT to guard against false positives.
            packageManager.hasSystemFeature(PackageManager.FEATURE_AUDIO_OUTPUT)) {
        AudioDeviceInfo[] devices = audioManager.getDevices(AudioManager.GET_DEVICES_OUTPUTS);
        for (AudioDeviceInfo device : devices) {
            if (device.getType() == AudioDeviceInfo.TYPE_BUILTIN_SPEAKER) {
                return true;
            }
        }
    }
    return false;
    

사운드 재생

스피커를 감지한 후에 Wear OS에서 사운드를 재생하는 절차는 핸드셋이나 기타 기기에서와 동일합니다. 자세한 내용은 미디어 재생을 참조하세요.

또한 웨어러블의 마이크에서 오디오를 녹음하려는 경우에는 앱이 마이크 사용 권한을 얻어야 합니다. 자세히 알아보려면 Wear OS에서의 권한을 참조하세요.