OSDN Git Service

Add method for returning SoundPool audio type.
authorSascha Haeberling <haeberling@google.com>
Wed, 17 Apr 2013 21:55:44 +0000 (14:55 -0700)
committerSascha Haeberling <haeberling@google.com>
Wed, 17 Apr 2013 21:55:44 +0000 (14:55 -0700)
  Bug: 7402245

Change-Id: Ib45ef78265a66d59f0b27473d9dfcdfa4624c8fa

src/com/android/camera/SoundClips.java

index 6388fec..8155c03 100644 (file)
@@ -48,6 +48,11 @@ public class SoundClips {
         }
     }
 
+    public static int getAudioTypeForSoundPool() {
+        return ApiHelper.getIntFieldIfExists(AudioManager.class,
+                "STREAM_SYSTEM_ENFORCED", null, AudioManager.STREAM_RING);
+    }
+
     /**
      * This class implements SoundClips.Player using MediaActionSound,
      * which exists since API level 16.
@@ -121,12 +126,10 @@ public class SoundClips {
 
         public SoundPoolPlayer(Context context) {
             mContext = context;
-            int audioType = ApiHelper.getIntFieldIfExists(AudioManager.class,
-                    "STREAM_SYSTEM_ENFORCED", null, AudioManager.STREAM_RING);
 
             mSoundIDToPlay = ID_NOT_LOADED;
 
-            mSoundPool = new SoundPool(NUM_SOUND_STREAMS, audioType, 0);
+            mSoundPool = new SoundPool(NUM_SOUND_STREAMS, getAudioTypeForSoundPool(), 0);
             mSoundPool.setOnLoadCompleteListener(this);
 
             mSoundIDs = new int[SOUND_RES.length];