diff options
| -rw-r--r-- | altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java | 10 | 
1 files changed, 7 insertions, 3 deletions
diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java index 273688d8..41045f03 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java @@ -352,7 +352,7 @@ public class AltosDroid extends FragmentActivity implements AltosUnitsListener {  		for (AltosDroidTab mTab : mTabs)  			mTab.update_ui(state, from_receiver, location, mTab == mTabsAdapter.currentItem()); -		if (state != null) +		if (state != null && mAltosVoice != null)  			mAltosVoice.tell(state, from_receiver);  		saved_state = state; @@ -465,8 +465,6 @@ public class AltosDroid extends FragmentActivity implements AltosUnitsListener {  		mStateLayout   = (RelativeLayout) findViewById(R.id.state_container);  		mStateView     = (TextView) findViewById(R.id.state_value);  		mAgeView       = (TextView) findViewById(R.id.age_value); - -		mAltosVoice = new AltosVoice(this);  	}  	@Override @@ -484,6 +482,8 @@ public class AltosDroid extends FragmentActivity implements AltosUnitsListener {  		doBindService(); +		if (mAltosVoice == null) +			mAltosVoice = new AltosVoice(this);  	}  	@Override @@ -504,6 +504,10 @@ public class AltosDroid extends FragmentActivity implements AltosUnitsListener {  		if(D) Log.e(TAG, "-- ON STOP --");  		doUnbindService(); +		if (mAltosVoice != null) { +			mAltosVoice.stop(); +			mAltosVoice = null; +		}  	}  	@Override  | 
