Merge "Get HDMI CEC physical address with service thread, so TIF can get it for Player." am: 3f2521f194
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2219765 Change-Id: I4b31cb4091a924012342cc9c16af198a35196aed Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -266,6 +266,10 @@ public class HdmiControlService extends SystemService {
|
|||||||
// Make sure HdmiCecConfig is instantiated and the XMLs are read.
|
// Make sure HdmiCecConfig is instantiated and the XMLs are read.
|
||||||
private HdmiCecConfig mHdmiCecConfig;
|
private HdmiCecConfig mHdmiCecConfig;
|
||||||
|
|
||||||
|
// Last return value of getPhysicalAddress(). Only updated on calls of getPhysicalAddress().
|
||||||
|
// Does not represent the current physical address at all times. Not to be used as a cache.
|
||||||
|
private int mPhysicalAddress = Constants.INVALID_PHYSICAL_ADDRESS;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Interface to report send result.
|
* Interface to report send result.
|
||||||
*/
|
*/
|
||||||
@@ -2080,10 +2084,16 @@ public class HdmiControlService extends SystemService {
|
|||||||
@Override
|
@Override
|
||||||
public int getPhysicalAddress() {
|
public int getPhysicalAddress() {
|
||||||
initBinderCall();
|
initBinderCall();
|
||||||
|
runOnServiceThread(new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
synchronized (mLock) {
|
synchronized (mLock) {
|
||||||
return mHdmiCecNetwork.getPhysicalAddress();
|
mPhysicalAddress = mHdmiCecNetwork.getPhysicalAddress();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
});
|
||||||
|
return mPhysicalAddress;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setSystemAudioMode(final boolean enabled, final IHdmiControlCallback callback) {
|
public void setSystemAudioMode(final boolean enabled, final IHdmiControlCallback callback) {
|
||||||
|
|||||||
Reference in New Issue
Block a user