Merge "Fix crash in legacy apps that register without a looper" into lmp-dev

This commit is contained in:
RoboErik
2014-08-15 18:10:48 +00:00
committed by Android (Google) Code Review
2 changed files with 14 additions and 3 deletions

View File

@@ -225,7 +225,7 @@ public class Media extends BaseCommand {
void printUsageMessage() {
try {
System.out.println("V2Monitoring session " + mController.getTag()
+ "... available commands:");
+ "... available commands: play, pause, next, previous");
} catch (RemoteException e) {
System.out.println("Error trying to monitor session!");
}
@@ -257,6 +257,14 @@ public class Media extends BaseCommand {
addNewline = false;
} else if ("q".equals(line) || "quit".equals(line)) {
break;
} else if ("play".equals(line)) {
mController.play();
} else if ("pause".equals(line)) {
mController.pause();
} else if ("next".equals(line)) {
mController.next();
} else if ("previous".equals(line)) {
mController.previous();
} else {
System.out.println("Invalid command: " + line);
}

View File

@@ -290,7 +290,6 @@ public class MediaSessionLegacyHelper {
if (DEBUG) {
Log.d(TAG, "addMediaButtonListener already added " + pi);
}
return;
}
holder.mMediaButtonListener = new MediaButtonListener(pi, context);
// TODO determine if handling transport performer commands should also
@@ -468,7 +467,11 @@ public class MediaSessionLegacyHelper {
mSessions.remove(mPi);
} else if (mCb == null) {
mCb = new SessionCallback();
mSession.setCallback(mCb);
Handler handler = null;
if (Looper.myLooper() == null) {
handler = new Handler(Looper.getMainLooper());
}
mSession.setCallback(mCb, handler);
}
}