Backport changes 7e94887988990e98b5c7738f393e10afa0d8ddb8 and fb5674fd0aa46a186dba92965fc5d11cd2630394
from Music2, to make it easier to share code between the two.
diff --git a/src/com/android/music/MusicBrowserActivity.java b/src/com/android/music/MusicBrowserActivity.java
index d82cdff..1c4a9d1 100644
--- a/src/com/android/music/MusicBrowserActivity.java
+++ b/src/com/android/music/MusicBrowserActivity.java
@@ -16,6 +16,8 @@
 
 package com.android.music;
 
+import com.android.music.MusicUtils.ServiceToken;
+
 import android.app.Activity;
 import android.content.ComponentName;
 import android.content.Intent;
@@ -27,6 +29,8 @@
 public class MusicBrowserActivity extends Activity
     implements MusicUtils.Defs {
 
+    private ServiceToken mToken;
+
     public MusicBrowserActivity() {
     }
 
@@ -47,13 +51,15 @@
         
         String shuf = getIntent().getStringExtra("autoshuffle");
         if ("true".equals(shuf)) {
-            bindService((new Intent()).setClass(this, MediaPlaybackService.class), autoshuffle, 0);
+            mToken = MusicUtils.bindToService(this, autoshuffle);
         }
     }
 
     @Override
     public void onDestroy() {
-        MusicUtils.unbindFromService(this);
+        if (mToken != null) {
+            MusicUtils.unbindFromService(mToken);
+        }
         super.onDestroy();
     }