Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/Morlunk/Jumble.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Comminos <andrew@comminos.com>2015-09-23 10:06:06 +0300
committerAndrew Comminos <andrew@comminos.com>2015-09-23 10:06:06 +0300
commit8cd8bea87c86f9e138630151d86e2ca9be2325aa (patch)
tree67419dff61f7569eb72c8f6b80a9b2a009e34d06
parentaa1b84030288573cea8cc072329783a78896866d (diff)
Work in progress bluetooth toggle.bluetooth-dev
-rw-r--r--src/main/java/com/morlunk/jumble/protocol/AudioHandler.java23
1 files changed, 12 insertions, 11 deletions
diff --git a/src/main/java/com/morlunk/jumble/protocol/AudioHandler.java b/src/main/java/com/morlunk/jumble/protocol/AudioHandler.java
index 6863121..acf359a 100644
--- a/src/main/java/com/morlunk/jumble/protocol/AudioHandler.java
+++ b/src/main/java/com/morlunk/jumble/protocol/AudioHandler.java
@@ -93,7 +93,7 @@ public class AudioHandler extends JumbleNetworkListener implements AudioInput.Au
/** True if the user is muted on the server. */
private boolean mMuted;
/** True if a bluetooth SCO connection should be preferred. */
- private boolean mUseBluetooth;
+ private final boolean mUseBluetooth;
/** True if a bluetooth connection is currently active. */
private boolean mBluetoothActive;
private boolean mHalfDuplex;
@@ -113,20 +113,17 @@ public class AudioHandler extends JumbleNetworkListener implements AudioInput.Au
Toast.makeText(mContext, R.string.bluetooth_connected, Toast.LENGTH_LONG).show();
break;
case AudioManager.SCO_AUDIO_STATE_DISCONNECTED:
- if (mUseBluetooth)
- Toast.makeText(mContext, R.string.bluetooth_disconnected, Toast.LENGTH_LONG).show();
+ Toast.makeText(mContext, R.string.bluetooth_disconnected, Toast.LENGTH_LONG).show();
break;
case AudioManager.SCO_AUDIO_STATE_ERROR:
- if (mUseBluetooth)
- Toast.makeText(mContext, R.string.bluetooth_error, Toast.LENGTH_LONG).show();
+ Toast.makeText(mContext, R.string.bluetooth_error, Toast.LENGTH_LONG).show();
break;
default:
// No change in bluetooth state.
return;
}
- boolean bluetoothActive = mUseBluetooth &&
- (audioState == AudioManager.SCO_AUDIO_STATE_CONNECTED);
+ boolean bluetoothActive = audioState == AudioManager.SCO_AUDIO_STATE_CONNECTED;
if (!mOutput.isPlaying() || mBluetoothActive != bluetoothActive) {
mBluetoothActive = bluetoothActive;
mOutput.stopPlaying();
@@ -186,11 +183,15 @@ public class AudioHandler extends JumbleNetworkListener implements AudioInput.Au
setServerMuted(self.isMuted() || self.isLocalMuted() || self.isSuppressed());
if (mTalking && !mMuted)
startRecording();
- // This sticky broadcast will initialize the audio output.
- mContext.registerReceiver(mBluetoothReceiver,
- new IntentFilter(AudioManager.ACTION_SCO_AUDIO_STATE_CHANGED));
- if (mUseBluetooth)
+
+ if (mUseBluetooth) {
mAudioManager.startBluetoothSco();
+ // This sticky broadcast will initialize the audio output.
+ mContext.registerReceiver(mBluetoothReceiver,
+ new IntentFilter(AudioManager.ACTION_SCO_AUDIO_STATE_CHANGED));
+ } else {
+ mOutput.startPlaying(false);
+ }
mInitialized = true;
}