Use alto-falantes em wearables

Alguns dispositivos Wear OS incluem alto-falantes, o que permite incorporar som nos seus aplicativos e oferecer uma dimensão adicional para interação com o usuário. Um dispositivo Wear com alto-falantes pode acionar alarmes de relógio ou timer, completos com notificações de áudio. Jogos do Wear ficam mais divertidos quando oferecem não apenas imagens, mas também sons.

Esta página descreve como aplicativos Wear podem usar as familiares APIs do Android para reproduzir sons pelos alto-falantes do dispositivo.

Confira os seguintes recursos relacionados:

Detectar os alto-falantes

Primeiro, um aplicativo Wear deve detectar se o dispositivo wearable tem alto-falantes. No exemplo a seguir, o aplicativo usa o método getDevices() em conjunto com o valor de FEATURE_AUDIO_OUTPUT para confirmar se o dispositivo é equipado com alto-falantes.

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
}

Java

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;

Reproduzir sons

Após detectar os alto-falantes, o processo para reproduzir sons no Wear OS é o mesmo para telefones ou outros dispositivos. Para obter mais informações, consulte Reprodução de mídias.

Se também quiser gravar áudio pelo microfone do wearable, seu aplicativo também deve obter permissão para usar o microfone. Para saber mais, consulte Permissões no Wear OS.