Loading src/com/android/bluetooth/avrcp/Avrcp.java +18 −10 Original line number Diff line number Diff line Loading @@ -402,9 +402,14 @@ public final class Avrcp { GET_INVALID); byte [] data; String [] text; boolean isSetAttrValRsp = false; synchronized (mPendingCmds) { Integer val = new Integer(getResponse); if (mPendingCmds.contains(val)) { if (getResponse == SET_ATTRIBUTE_VALUES) { isSetAttrValRsp = true; if (DEBUG) Log.v(TAG,"Response received for SET_ATTRIBUTE_VALUES"); } mHandler.removeMessages(MESSAGE_PLAYERSETTINGS_TIMEOUT); mPendingCmds.remove(val); } Loading Loading @@ -437,17 +442,20 @@ public final class Avrcp { if (data[0] == ATTRIBUTE_EQUALIZER || data[0] == ATTRIBUTE_REPEATMODE || data[0] == ATTRIBUTE_SHUFFLEMODE) { if (mPlayerStatusChangeNT == NOTIFICATION_TYPE_INTERIM) { Log.v(TAG,"Send Player appl attribute changed response"); mPlayerStatusChangeNT = NOTIFICATION_TYPE_CHANGED; sendPlayerAppChangedRsp(mPlayerStatusChangeNT); } else { if (isSetAttrValRsp){ isSetAttrValRsp = false; Log.v(TAG,"Respond to SET_ATTRIBUTE_VALUES request"); if (data[1] == ATTRIBUTE_NOTSUPPORTED) { SendSetPlayerAppRspNative(INTERNAL_ERROR); } else { SendSetPlayerAppRspNative(OPERATION_SUCCESSFUL); } } else if (mPlayerStatusChangeNT == NOTIFICATION_TYPE_INTERIM) { Log.v(TAG,"Send Player appl attribute changed response"); mPlayerStatusChangeNT = NOTIFICATION_TYPE_CHANGED; sendPlayerAppChangedRsp(mPlayerStatusChangeNT); } else { Log.v(TAG,"Drop Set Attr Val update from media player"); } } break; Loading Loading @@ -3440,7 +3448,7 @@ private void updateLocalPlayerSettings( byte[] data) { msg.what = MESSAGE_PLAYERSETTINGS_TIMEOUT; msg.arg1 = SET_ATTRIBUTE_VALUES; mPendingCmds.add(new Integer(msg.arg1)); mHandler.sendMessageDelayed(msg, 130); mHandler.sendMessageDelayed(msg, 500); } //PDU 0x15 Loading Loading
src/com/android/bluetooth/avrcp/Avrcp.java +18 −10 Original line number Diff line number Diff line Loading @@ -402,9 +402,14 @@ public final class Avrcp { GET_INVALID); byte [] data; String [] text; boolean isSetAttrValRsp = false; synchronized (mPendingCmds) { Integer val = new Integer(getResponse); if (mPendingCmds.contains(val)) { if (getResponse == SET_ATTRIBUTE_VALUES) { isSetAttrValRsp = true; if (DEBUG) Log.v(TAG,"Response received for SET_ATTRIBUTE_VALUES"); } mHandler.removeMessages(MESSAGE_PLAYERSETTINGS_TIMEOUT); mPendingCmds.remove(val); } Loading Loading @@ -437,17 +442,20 @@ public final class Avrcp { if (data[0] == ATTRIBUTE_EQUALIZER || data[0] == ATTRIBUTE_REPEATMODE || data[0] == ATTRIBUTE_SHUFFLEMODE) { if (mPlayerStatusChangeNT == NOTIFICATION_TYPE_INTERIM) { Log.v(TAG,"Send Player appl attribute changed response"); mPlayerStatusChangeNT = NOTIFICATION_TYPE_CHANGED; sendPlayerAppChangedRsp(mPlayerStatusChangeNT); } else { if (isSetAttrValRsp){ isSetAttrValRsp = false; Log.v(TAG,"Respond to SET_ATTRIBUTE_VALUES request"); if (data[1] == ATTRIBUTE_NOTSUPPORTED) { SendSetPlayerAppRspNative(INTERNAL_ERROR); } else { SendSetPlayerAppRspNative(OPERATION_SUCCESSFUL); } } else if (mPlayerStatusChangeNT == NOTIFICATION_TYPE_INTERIM) { Log.v(TAG,"Send Player appl attribute changed response"); mPlayerStatusChangeNT = NOTIFICATION_TYPE_CHANGED; sendPlayerAppChangedRsp(mPlayerStatusChangeNT); } else { Log.v(TAG,"Drop Set Attr Val update from media player"); } } break; Loading Loading @@ -3440,7 +3448,7 @@ private void updateLocalPlayerSettings( byte[] data) { msg.what = MESSAGE_PLAYERSETTINGS_TIMEOUT; msg.arg1 = SET_ATTRIBUTE_VALUES; mPendingCmds.add(new Integer(msg.arg1)); mHandler.sendMessageDelayed(msg, 130); mHandler.sendMessageDelayed(msg, 500); } //PDU 0x15 Loading