From d38a778b14b0295f1bda3fcaeec7242bbf1f23d2 Mon Sep 17 00:00:00 2001 From: Christopher Eby Date: Sun, 4 Apr 2010 15:25:14 -0500 Subject: [PATCH] Defer creation of a few utility classes in PlaybackService --- src/org/kreed/vanilla/PlaybackService.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/org/kreed/vanilla/PlaybackService.java b/src/org/kreed/vanilla/PlaybackService.java index fa5f85fb..e2c76141 100644 --- a/src/org/kreed/vanilla/PlaybackService.java +++ b/src/org/kreed/vanilla/PlaybackService.java @@ -96,6 +96,8 @@ public class PlaybackService extends Service implements Runnable, MediaPlayer.On private Song mLastSongBroadcast; private boolean mPlugged; private ContentObserver mMediaObserver; + public Receiver mReceiver; + public InCallListener mCallListener; private Method mIsWiredHeadsetOn; private Method mStartForeground; @@ -518,7 +520,7 @@ public class PlaybackService extends Service implements Runnable, MediaPlayer.On PlaybackServiceState.saveState(this, mSongTimeline, mCurrentSong, savePosition && mMediaPlayer != null ? mMediaPlayer.getCurrentPosition() : 0); } - private BroadcastReceiver mReceiver = new BroadcastReceiver() { + private class Receiver extends BroadcastReceiver { @Override public void onReceive(Context content, Intent intent) { @@ -532,7 +534,7 @@ public class PlaybackService extends Service implements Runnable, MediaPlayer.On } }; - private PhoneStateListener mCallListener = new PhoneStateListener() { + private class InCallListener extends PhoneStateListener { @Override public void onCallStateChanged(int state, String incomingNumber) { @@ -683,10 +685,12 @@ public class PlaybackService extends Service implements Runnable, MediaPlayer.On case POST_CREATE: updateNotification(getSong(0)); + mReceiver = new Receiver(); IntentFilter filter = new IntentFilter(); filter.addAction(Intent.ACTION_HEADSET_PLUG); registerReceiver(mReceiver, filter); + mCallListener = new InCallListener(); TelephonyManager telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); telephonyManager.listen(mCallListener, PhoneStateListener.LISTEN_CALL_STATE); break;