3
3
import android .content .Context ;
4
4
import android .media .AudioManager ;
5
5
import android .os .Build ;
6
+ import android .util .Log ;
6
7
7
8
/** -----------------------------------------------------------------------------------------------
8
9
* [HXAudioPlayerUtils] CLASS
13
14
14
15
public class HXAudioPlayerUtils {
15
16
17
+ /** CLASS VARIABLES ________________________________________________________________________ **/
18
+
19
+ // LOGGING VARIABLES
20
+ private static final String LOG_TAG = HXAudioPlayerUtils .class .getSimpleName ();
21
+
16
22
/** UTILITY METHODS ________________________________________________________________________ **/
17
23
18
24
// enableSystemSound(): Enables or disables the device's system sound effects. This is most
19
25
// commonly used if physical button's sound effects need to be enabled/disabled.
20
- // Note : Android 7.0 and above requires "android.permission.ACCESS_NOTIFICATION_POLICY".
26
+ // NOTE : Android 7.0 and above requires "android.permission.ACCESS_NOTIFICATION_POLICY".
21
27
public static void enableSystemSound (boolean mode , Context context ) {
22
28
23
29
// ANDROID 2.3 - ANDROID 6.0:
24
30
if (Build .VERSION .SDK_INT < Build .VERSION_CODES .N ) {
25
- AudioManager manager = (AudioManager ) context .getSystemService (Context .AUDIO_SERVICE );
26
- if (manager != null ) {
27
-
28
- // ANDROID 6.0+:
29
- if (Build .VERSION .SDK_INT >= Build .VERSION_CODES .M ) {
30
- if (mode ) {
31
- manager .adjustStreamVolume (AudioManager .STREAM_SYSTEM , AudioManager .ADJUST_UNMUTE , 0 );
32
- } else {
33
- manager .adjustStreamVolume (AudioManager .STREAM_SYSTEM , AudioManager .ADJUST_MUTE , 0 );
31
+ try {
32
+ AudioManager manager = (AudioManager ) context .getSystemService (Context .AUDIO_SERVICE );
33
+ if (manager != null ) {
34
+
35
+ // ANDROID 6.0+:
36
+ if (Build .VERSION .SDK_INT >= Build .VERSION_CODES .M ) {
37
+ if (mode ) {
38
+ manager .adjustStreamVolume (AudioManager .STREAM_SYSTEM , AudioManager .ADJUST_UNMUTE , 0 );
39
+ } else {
40
+ manager .adjustStreamVolume (AudioManager .STREAM_SYSTEM , AudioManager .ADJUST_MUTE , 0 );
41
+ }
34
42
}
35
- }
36
43
37
- // ANDROID 2.3 - ANDROID 5.1:
38
- else {
39
- manager .setStreamMute (AudioManager .STREAM_SYSTEM , mode );
44
+ // ANDROID 2.3 - ANDROID 5.1:
45
+ else {
46
+ manager .setStreamMute (AudioManager .STREAM_SYSTEM , mode );
47
+ }
40
48
}
49
+ } catch (Exception e ) {
50
+ Log .e (LOG_TAG , "ERROR: An exception occurred while attempting to access the AudioManager: " + e .getLocalizedMessage ());
41
51
}
42
52
}
43
53
}
44
- }
54
+ }
0 commit comments