diff --git a/app/build.gradle b/app/build.gradle index f6a91ea..660198c 100755 --- a/app/build.gradle +++ b/app/build.gradle @@ -7,8 +7,8 @@ android { applicationId "omegacentauri.mobi.simplestopwatch" minSdkVersion 4 targetSdkVersion 28 - versionCode 11 - versionName "1.10" + versionCode 12 + versionName "1.11" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { diff --git a/app/src/main/java/omegacentauri/mobi/simplestopwatch/MyChrono.java b/app/src/main/java/omegacentauri/mobi/simplestopwatch/MyChrono.java index 200142c..1859374 100755 --- a/app/src/main/java/omegacentauri/mobi/simplestopwatch/MyChrono.java +++ b/app/src/main/java/omegacentauri/mobi/simplestopwatch/MyChrono.java @@ -345,10 +345,17 @@ public void setAudio(String soundMode) { longTone = new AudioTrack(STREAM, 44100, AudioFormat.CHANNEL_OUT_MONO, AudioFormat.ENCODING_PCM_16BIT, tone.length * 2, AudioTrack.MODE_STATIC); longTone.write(tone, 0, tone.length); - int sessionId = longTone.getAudioSessionId(); + int sessionId = 0; int shortLength = Math.min(tone.length, (int) (44.100 * SHORT_TONE_LENGTH)); - shortTone = new AudioTrack(STREAM, 44100, AudioFormat.CHANNEL_OUT_MONO, - AudioFormat.ENCODING_PCM_16BIT, shortLength * 2, AudioTrack.MODE_STATIC, sessionId); + if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.GINGERBREAD) { + sessionId = longTone.getAudioSessionId(); + shortTone = new AudioTrack(STREAM, 44100, AudioFormat.CHANNEL_OUT_MONO, + AudioFormat.ENCODING_PCM_16BIT, shortLength * 2, AudioTrack.MODE_STATIC, sessionId); + } + else { + shortTone = new AudioTrack(STREAM, 44100, AudioFormat.CHANNEL_OUT_MONO, + AudioFormat.ENCODING_PCM_16BIT, shortLength * 2, AudioTrack.MODE_STATIC); + } shortTone.write(tone, 0, shortLength); AudioManager am = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE); am.setStreamVolume(STREAM, am.getStreamMaxVolume(STREAM), 0);