1 page.title=Using Speakers on Wearables 2 3 @jd:body 4 5 <div id="tb-wrapper"> 6 <div id="tb"> 7 <h2>This lesson teaches you to</h2> 8 <ol> 9 <li><a href="#Detect">Detect the Speaker</a></li> 10 <li><a href="#Play">Play Sounds</a></li> 11 </ol> 12 <h2>You should also read</h2> 13 <ul> 14 <li><a href="{@docRoot}design/wear/watchfaces.html">Watch Faces for Android Wear</a></li> 15 </ul> 16 </div> 17 </div> 18 19 <p>Some Android Wear devices include speakers, enabling them to incorporate sound into their 20 apps and offer an extra dimension of engagement with the user. A speaker-equipped Wear device might 21 trigger a clock or timer alarm, complete with audio notification. Games on Wear become become more 22 entertaining by offering not just sight, but sound.</p> 23 24 <p>This page describes how apps on Wear devices running Android 6.0 (API level 23) can use 25 familiar Android APIs to play sounds through the device speaker.</p> 26 27 <h2 id="Detect">Detect the Speaker</h2> 28 29 <p>A Wear app must first detect whether the wearable device has a speaker. In the following example, 30 the app uses the {@link android.media.AudioManager#getDevices(int) getDevices() } method in 31 conjunction with the value of {@link android.content.pm.PackageManager#FEATURE_AUDIO_OUTPUT} to 32 confirm that the device is equipped with a speaker.</p> 33 34 <pre> 35 PackageManager packageManager = context.getPackageManager(); 36 AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE); 37 38 // Check whether the device has a speaker. 39 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { 40 // Check FEATURE_AUDIO_OUTPUT to guard against false positives. 41 if (!packageManager.hasSystemFeature(PackageManager.FEATURE_AUDIO_OUTPUT)) { 42 return false; 43 } 44 45 AudioDeviceInfo[] devices = audioManager.getDevices(AudioManager.GET_DEVICES_OUTPUTS); 46 for (AudioDeviceInfo device : devices) { 47 if (device.getType() == AudioDeviceInfo.TYPE_BUILTIN_SPEAKER) { 48 return true; 49 } 50 } 51 } 52 return false; 53 </pre> 54 55 <h2 id="Play">Play Sounds</h2> 56 57 <p>Once you've detected the speaker, the process for playing sound on Android Wear is the 58 same as for a handset or other device. For more information, see 59 <a href="{@docRoot}guide/topics/media/mediaplayer.html">Media Playback</a>.</p> 60 61 <p>If you also want to record audio from the microphone on the wearable, your app must also get 62 permission to use the microphone. To learn more, see 63 <a href="{@docRoot}training/articles/wear-permissions.html">Permissions on Android Wear.</a></p>