am 5b062e07: Merge "CEC: Fix apilint errors." into lmp-mr1-dev
* commit '5b062e07c5a647d12cbeb9dace7806b54d459c56': CEC: Fix apilint errors.
This commit is contained in:
@@ -16,11 +16,13 @@ import android.util.Log;
|
||||
public abstract class HdmiClient {
|
||||
private static final String TAG = "HdmiClient";
|
||||
|
||||
protected final IHdmiControlService mService;
|
||||
/* package */ final IHdmiControlService mService;
|
||||
|
||||
protected abstract int getDeviceType();
|
||||
private IHdmiVendorCommandListener mIHdmiVendorCommandListener;
|
||||
|
||||
public HdmiClient(IHdmiControlService service) {
|
||||
/* package */ abstract int getDeviceType();
|
||||
|
||||
/* package */ HdmiClient(IHdmiControlService service) {
|
||||
mService = service;
|
||||
}
|
||||
|
||||
@@ -40,7 +42,7 @@ public abstract class HdmiClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Send a key event to other logical device.
|
||||
* Sends a key event to other logical device.
|
||||
*
|
||||
* @param keyCode key code to send. Defined in {@link android.view.KeyEvent}.
|
||||
* @param isPressed true if this is key press event
|
||||
@@ -54,7 +56,7 @@ public abstract class HdmiClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Send vendor-specific command.
|
||||
* Sends vendor-specific command.
|
||||
*
|
||||
* @param targetAddress address of the target device
|
||||
* @param params vendor-specific parameter. For <Vendor Command With ID> do not
|
||||
@@ -71,18 +73,23 @@ public abstract class HdmiClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Add a listener used to receive incoming vendor-specific command.
|
||||
* Sets a listener used to receive incoming vendor-specific command.
|
||||
*
|
||||
* @param listener listener object
|
||||
*/
|
||||
public void addVendorCommandListener(@NonNull VendorCommandListener listener) {
|
||||
public void setVendorCommandListener(@NonNull VendorCommandListener listener) {
|
||||
if (listener == null) {
|
||||
throw new IllegalArgumentException("listener cannot be null");
|
||||
}
|
||||
if (mIHdmiVendorCommandListener != null) {
|
||||
throw new IllegalStateException("listener was already set");
|
||||
}
|
||||
try {
|
||||
mService.addVendorCommandListener(getListenerWrapper(listener), getDeviceType());
|
||||
IHdmiVendorCommandListener wrappedListener = getListenerWrapper(listener);
|
||||
mService.addVendorCommandListener(wrappedListener, getDeviceType());
|
||||
mIHdmiVendorCommandListener = wrappedListener;
|
||||
} catch (RemoteException e) {
|
||||
Log.e(TAG, "failed to add vendor command listener: ", e);
|
||||
Log.e(TAG, "failed to set vendor command listener: ", e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -21,6 +21,8 @@ import android.annotation.SdkConstant;
|
||||
import android.annotation.SdkConstant.SdkConstantType;
|
||||
import android.annotation.SystemApi;
|
||||
import android.os.RemoteException;
|
||||
import android.util.ArrayMap;
|
||||
import android.util.Log;
|
||||
|
||||
/**
|
||||
* The {@link HdmiControlManager} class is used to send HDMI control messages
|
||||
@@ -36,6 +38,8 @@ import android.os.RemoteException;
|
||||
*/
|
||||
@SystemApi
|
||||
public final class HdmiControlManager {
|
||||
private static final String TAG = "HdmiControlManager";
|
||||
|
||||
@Nullable private final IHdmiControlService mService;
|
||||
|
||||
/**
|
||||
@@ -56,7 +60,7 @@ public final class HdmiControlManager {
|
||||
|
||||
/**
|
||||
* Message used by TV to receive volume status from Audio Receiver. It should check volume value
|
||||
* that is retrieved from extra value with the key {@link #EXTRA_MESSAGE_EXTRAM_PARAM1}. If the
|
||||
* that is retrieved from extra value with the key {@link #EXTRA_MESSAGE_EXTRA_PARAM1}. If the
|
||||
* value is in range of [0,100], it is current volume of Audio Receiver. And there is another
|
||||
* value, {@link #AVR_VOLUME_MUTED}, which is used to inform volume mute.
|
||||
*/
|
||||
@@ -71,7 +75,7 @@ public final class HdmiControlManager {
|
||||
* Used as an extra field in the intent {@link #ACTION_OSD_MESSAGE}. Contains the extra value
|
||||
* of the message.
|
||||
*/
|
||||
public static final String EXTRA_MESSAGE_EXTRAM_PARAM1 =
|
||||
public static final String EXTRA_MESSAGE_EXTRA_PARAM1 =
|
||||
"android.hardware.hdmi.extra.MESSAGE_EXTRA_PARAM1";
|
||||
|
||||
/**
|
||||
@@ -251,10 +255,9 @@ public final class HdmiControlManager {
|
||||
private final boolean mHasTvDevice;
|
||||
|
||||
/**
|
||||
* @hide - hide this constructor because it has a parameter of type
|
||||
* IHdmiControlService, which is a system private class. The right way
|
||||
* to create an instance of this class is using the factory
|
||||
* Context.getSystemService.
|
||||
* {@hide} - hide this constructor because it has a parameter of type IHdmiControlService,
|
||||
* which is a system private class. The right way to create an instance of this class is
|
||||
* using the factory Context.getSystemService.
|
||||
*/
|
||||
public HdmiControlManager(IHdmiControlService service) {
|
||||
mService = service;
|
||||
@@ -340,6 +343,9 @@ public final class HdmiControlManager {
|
||||
void onReceived(HdmiHotplugEvent event);
|
||||
}
|
||||
|
||||
private final ArrayMap<HotplugEventListener, IHdmiHotplugEventListener>
|
||||
mHotplugEventListeners = new ArrayMap<>();
|
||||
|
||||
/**
|
||||
* Listener used to get vendor-specific commands.
|
||||
*/
|
||||
@@ -384,12 +390,19 @@ public final class HdmiControlManager {
|
||||
*/
|
||||
public void addHotplugEventListener(HotplugEventListener listener) {
|
||||
if (mService == null) {
|
||||
Log.e(TAG, "HdmiControlService is not available");
|
||||
return;
|
||||
}
|
||||
if (mHotplugEventListeners.containsKey(listener)) {
|
||||
Log.e(TAG, "listener is already registered");
|
||||
return;
|
||||
}
|
||||
IHdmiHotplugEventListener wrappedListener = getHotplugEventListenerWrapper(listener);
|
||||
mHotplugEventListeners.put(listener, wrappedListener);
|
||||
try {
|
||||
mService.addHotplugEventListener(getHotplugEventListenerWrapper(listener));
|
||||
mService.addHotplugEventListener(wrappedListener);
|
||||
} catch (RemoteException e) {
|
||||
// Do nothing.
|
||||
Log.e(TAG, "failed to add hotplug event listener: ", e);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -400,12 +413,18 @@ public final class HdmiControlManager {
|
||||
*/
|
||||
public void removeHotplugEventListener(HotplugEventListener listener) {
|
||||
if (mService == null) {
|
||||
Log.e(TAG, "HdmiControlService is not available");
|
||||
return;
|
||||
}
|
||||
IHdmiHotplugEventListener wrappedListener = mHotplugEventListeners.remove(listener);
|
||||
if (wrappedListener == null) {
|
||||
Log.e(TAG, "tried to remove not-registered listener");
|
||||
return;
|
||||
}
|
||||
try {
|
||||
mService.removeHotplugEventListener(getHotplugEventListenerWrapper(listener));
|
||||
mService.removeHotplugEventListener(wrappedListener);
|
||||
} catch (RemoteException e) {
|
||||
// Do nothing.
|
||||
Log.e(TAG, "failed to remove hotplug event listener: ", e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -237,14 +237,14 @@ public class HdmiDeviceInfo implements Parcelable {
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the id of the device.
|
||||
* Returns the id of the device.
|
||||
*/
|
||||
public int getId() {
|
||||
return mId;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the id to be used for CEC device.
|
||||
* Returns the id to be used for CEC device.
|
||||
*
|
||||
* @param address logical address of CEC device
|
||||
* @return id for CEC device
|
||||
@@ -255,7 +255,7 @@ public class HdmiDeviceInfo implements Parcelable {
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the id to be used for MHL device.
|
||||
* Returns the id to be used for MHL device.
|
||||
*
|
||||
* @param portId port which the MHL device is connected to
|
||||
* @return id for MHL device
|
||||
@@ -266,7 +266,7 @@ public class HdmiDeviceInfo implements Parcelable {
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the id to be used for hardware port.
|
||||
* Returns the id to be used for hardware port.
|
||||
*
|
||||
* @param portId port id
|
||||
* @return id for hardware port
|
||||
@@ -276,28 +276,28 @@ public class HdmiDeviceInfo implements Parcelable {
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the CEC logical address of the device.
|
||||
* Returns the CEC logical address of the device.
|
||||
*/
|
||||
public int getLogicalAddress() {
|
||||
return mLogicalAddress;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the physical address of the device.
|
||||
* Returns the physical address of the device.
|
||||
*/
|
||||
public int getPhysicalAddress() {
|
||||
return mPhysicalAddress;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the port ID.
|
||||
* Returns the port ID.
|
||||
*/
|
||||
public int getPortId() {
|
||||
return mPortId;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return CEC type of the device. For more details, refer constants between {@link #DEVICE_TV}
|
||||
* Returns CEC type of the device. For more details, refer constants between {@link #DEVICE_TV}
|
||||
* and {@link #DEVICE_INACTIVE}.
|
||||
*/
|
||||
public int getDeviceType() {
|
||||
@@ -305,7 +305,7 @@ public class HdmiDeviceInfo implements Parcelable {
|
||||
}
|
||||
|
||||
/**
|
||||
* Return device's power status. It should be one of the following values.
|
||||
* Returns device's power status. It should be one of the following values.
|
||||
* <ul>
|
||||
* <li>{@link HdmiControlManager#POWER_STATUS_ON}
|
||||
* <li>{@link HdmiControlManager#POWER_STATUS_STANDBY}
|
||||
@@ -319,21 +319,21 @@ public class HdmiDeviceInfo implements Parcelable {
|
||||
}
|
||||
|
||||
/**
|
||||
* Return MHL device id. Return -1 for non-MHL device.
|
||||
* Returns MHL device id. Return -1 for non-MHL device.
|
||||
*/
|
||||
public int getDeviceId() {
|
||||
return mDeviceId;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return MHL adopter id. Return -1 for non-MHL device.
|
||||
* Returns MHL adopter id. Return -1 for non-MHL device.
|
||||
*/
|
||||
public int getAdopterId() {
|
||||
return mAdopterId;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return {@code true} if the device is of a type that can be an input source.
|
||||
* Returns {@code true} if the device is of a type that can be an input source.
|
||||
*/
|
||||
public boolean isSourceType() {
|
||||
return mDeviceType == DEVICE_PLAYBACK
|
||||
@@ -342,7 +342,7 @@ public class HdmiDeviceInfo implements Parcelable {
|
||||
}
|
||||
|
||||
/**
|
||||
* Return {@code true} if the device represents an HDMI-CEC device. {@code false} if the device
|
||||
* Returns {@code true} if the device represents an HDMI-CEC device. {@code false} if the device
|
||||
* is either MHL or other device.
|
||||
*/
|
||||
public boolean isCecDevice() {
|
||||
@@ -350,7 +350,7 @@ public class HdmiDeviceInfo implements Parcelable {
|
||||
}
|
||||
|
||||
/**
|
||||
* Return {@code true} if the device represents an MHL device. {@code false} if the device is
|
||||
* Returns {@code true} if the device represents an MHL device. {@code false} if the device is
|
||||
* either CEC or other device.
|
||||
*/
|
||||
public boolean isMhlDevice() {
|
||||
@@ -358,14 +358,14 @@ public class HdmiDeviceInfo implements Parcelable {
|
||||
}
|
||||
|
||||
/**
|
||||
* Return display (OSD) name of the device.
|
||||
* Returns display (OSD) name of the device.
|
||||
*/
|
||||
public String getDisplayName() {
|
||||
return mDisplayName;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return vendor id of the device. Vendor id is used to distinguish devices built by other
|
||||
* Returns vendor id of the device. Vendor id is used to distinguish devices built by other
|
||||
* manufactures. This is required for vendor-specific command on CEC standard.
|
||||
*/
|
||||
public int getVendorId() {
|
||||
@@ -373,7 +373,7 @@ public class HdmiDeviceInfo implements Parcelable {
|
||||
}
|
||||
|
||||
/**
|
||||
* Describe the kinds of special objects contained in this Parcelable's marshalled
|
||||
* Describes the kinds of special objects contained in this Parcelable's marshalled
|
||||
* representation.
|
||||
*/
|
||||
@Override
|
||||
@@ -382,7 +382,7 @@ public class HdmiDeviceInfo implements Parcelable {
|
||||
}
|
||||
|
||||
/**
|
||||
* Serialize this object into a {@link Parcel}.
|
||||
* Serializes this object into a {@link Parcel}.
|
||||
*
|
||||
* @param dest The Parcel in which the object should be written.
|
||||
* @param flags Additional flags about how the object should be written. May be 0 or
|
||||
|
||||
@@ -44,7 +44,7 @@ public final class HdmiHotplugEvent implements Parcelable {
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the port number for which the event occurred.
|
||||
* Returns the port number for which the event occurred.
|
||||
*
|
||||
* @return port number
|
||||
*/
|
||||
@@ -53,7 +53,7 @@ public final class HdmiHotplugEvent implements Parcelable {
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the connection status associated with this event
|
||||
* Returns the connection status associated with this event
|
||||
*
|
||||
* @return true if the device gets connected; otherwise false
|
||||
*/
|
||||
@@ -62,7 +62,7 @@ public final class HdmiHotplugEvent implements Parcelable {
|
||||
}
|
||||
|
||||
/**
|
||||
* Describe the kinds of special objects contained in this Parcelable's
|
||||
* Describes the kinds of special objects contained in this Parcelable's
|
||||
* marshalled representation.
|
||||
*/
|
||||
@Override
|
||||
@@ -71,7 +71,7 @@ public final class HdmiHotplugEvent implements Parcelable {
|
||||
}
|
||||
|
||||
/**
|
||||
* Flatten this object in to a Parcel.
|
||||
* Flattens this object in to a Parcel.
|
||||
*
|
||||
* @param dest The Parcel in which the object should be written.
|
||||
* @param flags Additional flags about how the object should be written.
|
||||
@@ -86,17 +86,19 @@ public final class HdmiHotplugEvent implements Parcelable {
|
||||
public static final Parcelable.Creator<HdmiHotplugEvent> CREATOR
|
||||
= new Parcelable.Creator<HdmiHotplugEvent>() {
|
||||
/**
|
||||
* Rebuild a {@link HdmiHotplugEvent} previously stored with
|
||||
* Rebuilds a {@link HdmiHotplugEvent} previously stored with
|
||||
* {@link Parcelable#writeToParcel(Parcel, int)}.
|
||||
*
|
||||
* @param p {@link HdmiHotplugEvent} object to read the Rating from
|
||||
* @return a new {@link HdmiHotplugEvent} created from the data in the parcel
|
||||
*/
|
||||
@Override
|
||||
public HdmiHotplugEvent createFromParcel(Parcel p) {
|
||||
int port = p.readInt();
|
||||
boolean connected = p.readByte() == 1;
|
||||
return new HdmiHotplugEvent(port, connected);
|
||||
}
|
||||
@Override
|
||||
public HdmiHotplugEvent[] newArray(int size) {
|
||||
return new HdmiHotplugEvent[size];
|
||||
}
|
||||
|
||||
@@ -64,12 +64,12 @@ public final class HdmiPlaybackClient extends HdmiClient {
|
||||
public void onComplete(int status);
|
||||
}
|
||||
|
||||
HdmiPlaybackClient(IHdmiControlService service) {
|
||||
/* package */ HdmiPlaybackClient(IHdmiControlService service) {
|
||||
super(service);
|
||||
}
|
||||
|
||||
/**
|
||||
* Perform the feature 'one touch play' from playback device to turn on display
|
||||
* Performs the feature 'one touch play' from playback device to turn on display
|
||||
* and switch the input.
|
||||
*
|
||||
* @param callback {@link OneTouchPlayCallback} object to get informed
|
||||
@@ -90,7 +90,7 @@ public final class HdmiPlaybackClient extends HdmiClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the status of display device connected through HDMI bus.
|
||||
* Gets the status of display device connected through HDMI bus.
|
||||
*
|
||||
* @param callback {@link DisplayStatusCallback} object to get informed
|
||||
* of the result
|
||||
|
||||
@@ -114,7 +114,7 @@ public final class HdmiPortInfo implements Parcelable {
|
||||
}
|
||||
|
||||
/**
|
||||
* Describe the kinds of special objects contained in this Parcelable's
|
||||
* Describes the kinds of special objects contained in this Parcelable's
|
||||
* marshalled representation.
|
||||
*/
|
||||
@Override
|
||||
@@ -146,7 +146,7 @@ public final class HdmiPortInfo implements Parcelable {
|
||||
};
|
||||
|
||||
/**
|
||||
* Serialize this object into a {@link Parcel}.
|
||||
* Serializes this object into a {@link Parcel}.
|
||||
*
|
||||
* @param dest The Parcel in which the object should be written.
|
||||
* @param flags Additional flags about how the object should be written.
|
||||
|
||||
@@ -25,7 +25,7 @@ import android.hardware.hdmi.HdmiRecordSources.RecordSource;
|
||||
*/
|
||||
@SystemApi
|
||||
public abstract class HdmiRecordListener {
|
||||
protected HdmiRecordListener() {}
|
||||
public HdmiRecordListener() {}
|
||||
|
||||
/**
|
||||
* Called when TV received one touch record request from record device. The client of this
|
||||
@@ -34,7 +34,7 @@ public abstract class HdmiRecordListener {
|
||||
* @param recorderAddress
|
||||
* @return record source to be used for recording. Null if no device is available.
|
||||
*/
|
||||
public abstract RecordSource getOneTouchRecordSource(int recorderAddress);
|
||||
public abstract RecordSource onOneTouchRecordSourceRequested(int recorderAddress);
|
||||
|
||||
/**
|
||||
* Called when one touch record is started or failed during initialization.
|
||||
|
||||
@@ -59,21 +59,21 @@ public final class HdmiRecordSources {
|
||||
*/
|
||||
@SystemApi
|
||||
public static abstract class RecordSource {
|
||||
protected final int mSourceType;
|
||||
protected final int mExtraDataSize;
|
||||
/* package */ final int mSourceType;
|
||||
/* package */ final int mExtraDataSize;
|
||||
|
||||
protected RecordSource(int sourceType, int extraDataSize) {
|
||||
/* package */ RecordSource(int sourceType, int extraDataSize) {
|
||||
mSourceType = sourceType;
|
||||
mExtraDataSize = extraDataSize;
|
||||
}
|
||||
|
||||
abstract int extraParamToByteArray(byte[] data, int index);
|
||||
/* package */ abstract int extraParamToByteArray(byte[] data, int index);
|
||||
|
||||
final int getDataSize(boolean includeType) {
|
||||
/* package */ final int getDataSize(boolean includeType) {
|
||||
return includeType ? mExtraDataSize + 1 : mExtraDataSize;
|
||||
}
|
||||
|
||||
final int toByteArray(boolean includeType, byte[] data, int index) {
|
||||
/* package */ final int toByteArray(boolean includeType, byte[] data, int index) {
|
||||
if (includeType) {
|
||||
// 1 to 8 bytes (depends on source).
|
||||
// {[Record Source Type]} |
|
||||
@@ -94,7 +94,7 @@ public final class HdmiRecordSources {
|
||||
// ---- Own source -----------------------------------------------------------------------------
|
||||
// ---------------------------------------------------------------------------------------------
|
||||
/**
|
||||
* Create {@link OwnSource} of own source.
|
||||
* Creates {@link OwnSource} of own source.
|
||||
*/
|
||||
public static OwnSource ofOwnSource() {
|
||||
return new OwnSource();
|
||||
@@ -311,7 +311,7 @@ public final class HdmiRecordSources {
|
||||
*/
|
||||
public static final class DigitalChannelData implements DigitalServiceIdentification {
|
||||
/** Identifies the logical or virtual channel number of a service. */
|
||||
private ChannelIdentifier mChannelIdentifier;
|
||||
private final ChannelIdentifier mChannelIdentifier;
|
||||
|
||||
public static DigitalChannelData ofTwoNumbers(int majorNumber, int minorNumber) {
|
||||
return new DigitalChannelData(
|
||||
@@ -338,7 +338,7 @@ public final class HdmiRecordSources {
|
||||
}
|
||||
|
||||
/**
|
||||
* Create {@link DigitalServiceSource} with channel type.
|
||||
* Creates {@link DigitalServiceSource} with channel type.
|
||||
*
|
||||
* @param broadcastSystem digital broadcast system. It should be one of
|
||||
* <ul>
|
||||
@@ -389,7 +389,7 @@ public final class HdmiRecordSources {
|
||||
}
|
||||
|
||||
/**
|
||||
* Create {@link DigitalServiceSource} of ARIB type.
|
||||
* Creates {@link DigitalServiceSource} of ARIB type.
|
||||
*
|
||||
* @param aribType ARIB type. It should be one of
|
||||
* <ul>
|
||||
@@ -420,7 +420,7 @@ public final class HdmiRecordSources {
|
||||
}
|
||||
|
||||
/**
|
||||
* Create {@link DigitalServiceSource} of ATSC type.
|
||||
* Creates {@link DigitalServiceSource} of ATSC type.
|
||||
*
|
||||
* @param atscType ATSC type. It should be one of
|
||||
* <ul>
|
||||
@@ -451,7 +451,7 @@ public final class HdmiRecordSources {
|
||||
}
|
||||
|
||||
/**
|
||||
* Create {@link DigitalServiceSource} of ATSC type.
|
||||
* Creates {@link DigitalServiceSource} of ATSC type.
|
||||
*
|
||||
* @param dvbType DVB type. It should be one of
|
||||
* <ul>
|
||||
@@ -572,7 +572,7 @@ public final class HdmiRecordSources {
|
||||
public static final int BROADCAST_SYSTEM_PAL_OTHER_SYSTEM = 31;
|
||||
|
||||
/**
|
||||
* Create {@link AnalogueServiceSource} of analogue service.
|
||||
* Creates {@link AnalogueServiceSource} of analogue service.
|
||||
*
|
||||
* @param broadcastType
|
||||
* @param frequency
|
||||
@@ -615,7 +615,7 @@ public final class HdmiRecordSources {
|
||||
*/
|
||||
@SystemApi
|
||||
public static final class AnalogueServiceSource extends RecordSource {
|
||||
static final int EXTRA_DATA_SIZE = 4;
|
||||
/* package */ static final int EXTRA_DATA_SIZE = 4;
|
||||
|
||||
/** Indicates the Analogue broadcast type. */
|
||||
private final int mBroadcastType;
|
||||
@@ -635,7 +635,7 @@ public final class HdmiRecordSources {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected int extraParamToByteArray(byte[] data, int index) {
|
||||
/* package */ int extraParamToByteArray(byte[] data, int index) {
|
||||
// [Analogue Broadcast Type] - 1 byte
|
||||
data[index] = (byte) mBroadcastType;
|
||||
// [Analogue Frequency] - 2 bytes
|
||||
@@ -651,7 +651,7 @@ public final class HdmiRecordSources {
|
||||
// ---- External plug data ---------------------------------------------------------------------
|
||||
// ---------------------------------------------------------------------------------------------
|
||||
/**
|
||||
* Create {@link ExternalPlugData} of external plug type.
|
||||
* Creates {@link ExternalPlugData} of external plug type.
|
||||
*
|
||||
* @param plugNumber plug number. It should be in range of [1, 255]
|
||||
* @hide
|
||||
@@ -695,7 +695,7 @@ public final class HdmiRecordSources {
|
||||
// ---- External physical address --------------------------------------------------------------
|
||||
// ---------------------------------------------------------------------------------------------
|
||||
/**
|
||||
* Create {@link ExternalPhysicalAddress} of external physical address.
|
||||
* Creates {@link ExternalPhysicalAddress} of external physical address.
|
||||
*
|
||||
* @param physicalAddress
|
||||
* @hide
|
||||
@@ -754,7 +754,7 @@ public final class HdmiRecordSources {
|
||||
}
|
||||
|
||||
/**
|
||||
* Check the byte array of record source.
|
||||
* Checks the byte array of record source.
|
||||
* @hide
|
||||
*/
|
||||
@SystemApi
|
||||
|
||||
@@ -67,7 +67,7 @@ public class HdmiTimerRecordSources {
|
||||
private HdmiTimerRecordSources() {}
|
||||
|
||||
/**
|
||||
* Create {@link TimerRecordSource} for digital source which is used for <Set Digital
|
||||
* Creates {@link TimerRecordSource} for digital source which is used for <Set Digital
|
||||
* Timer>.
|
||||
*
|
||||
* @param timerInfo timer info used for timer recording
|
||||
@@ -82,7 +82,7 @@ public class HdmiTimerRecordSources {
|
||||
}
|
||||
|
||||
/**
|
||||
* Create {@link TimerRecordSource} for analogue source which is used for <Set Analogue
|
||||
* Creates {@link TimerRecordSource} for analogue source which is used for <Set Analogue
|
||||
* Timer>.
|
||||
*
|
||||
* @param timerInfo timer info used for timer recording
|
||||
@@ -97,7 +97,7 @@ public class HdmiTimerRecordSources {
|
||||
}
|
||||
|
||||
/**
|
||||
* Create {@link TimerRecordSource} for external plug which is used for <Set External
|
||||
* Creates {@link TimerRecordSource} for external plug which is used for <Set External
|
||||
* Timer>.
|
||||
*
|
||||
* @param timerInfo timer info used for timer recording
|
||||
@@ -112,7 +112,7 @@ public class HdmiTimerRecordSources {
|
||||
}
|
||||
|
||||
/**
|
||||
* Create {@link TimerRecordSource} for external physical address which is used for <Set
|
||||
* Creates {@link TimerRecordSource} for external physical address which is used for <Set
|
||||
* External Timer>.
|
||||
*
|
||||
* @param timerInfo timer info used for timer recording
|
||||
@@ -140,7 +140,7 @@ public class HdmiTimerRecordSources {
|
||||
}
|
||||
|
||||
/**
|
||||
* Create {@link Duration} for time value.
|
||||
* Creates {@link Duration} for time value.
|
||||
*
|
||||
* @param hour hour in range of [0, 23]
|
||||
* @param minute minute in range of [0, 60]
|
||||
@@ -162,7 +162,7 @@ public class HdmiTimerRecordSources {
|
||||
}
|
||||
|
||||
/**
|
||||
* Create {@link Duration} for duration value.
|
||||
* Creates {@link Duration} for duration value.
|
||||
*
|
||||
* @param hour hour in range of [0, 99]
|
||||
* @param minute minute in range of [0, 59]
|
||||
@@ -184,21 +184,21 @@ public class HdmiTimerRecordSources {
|
||||
}
|
||||
|
||||
private static class TimeUnit {
|
||||
protected final int mHour;
|
||||
protected final int mMinute;
|
||||
/* package */ final int mHour;
|
||||
/* package */ final int mMinute;
|
||||
|
||||
protected TimeUnit(int hour, int minute) {
|
||||
/* package */ TimeUnit(int hour, int minute) {
|
||||
mHour = hour;
|
||||
mMinute = minute;
|
||||
}
|
||||
|
||||
protected int toByteArray(byte[] data, int index) {
|
||||
/* package */ int toByteArray(byte[] data, int index) {
|
||||
data[index] = toBcdByte(mHour);
|
||||
data[index + 1] = toBcdByte(mMinute);
|
||||
return 2;
|
||||
}
|
||||
|
||||
protected static byte toBcdByte(int value) {
|
||||
/* package */ static byte toBcdByte(int value) {
|
||||
int digitOfTen = (value / 10) % 10;
|
||||
int digitOfOne = value % 10;
|
||||
return (byte) ((digitOfTen << 4) | digitOfOne);
|
||||
@@ -247,7 +247,7 @@ public class HdmiTimerRecordSources {
|
||||
RECORDING_SEQUENCE_REPEAT_SATUREDAY);
|
||||
|
||||
/**
|
||||
* Create {@link TimerInfo} with the given information.
|
||||
* Creates {@link TimerInfo} with the given information.
|
||||
*
|
||||
* @param dayOfMonth day of month
|
||||
* @param monthOfYear month of year
|
||||
@@ -426,7 +426,7 @@ public class HdmiTimerRecordSources {
|
||||
}
|
||||
|
||||
/**
|
||||
* Check the byte array of timer record source.
|
||||
* Checks the byte array of timer record source.
|
||||
* @param sourcetype
|
||||
* @param recordSource
|
||||
* @hide
|
||||
|
||||
@@ -22,11 +22,11 @@ import android.hardware.hdmi.HdmiTimerRecordSources.TimerRecordSource;
|
||||
import android.os.RemoteException;
|
||||
import android.util.Log;
|
||||
|
||||
import libcore.util.EmptyArray;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
import libcore.util.EmptyArray;
|
||||
|
||||
/**
|
||||
* HdmiTvClient represents HDMI-CEC logical device of type TV in the Android system
|
||||
* which acts as TV/Display. It provides with methods that manage, interact with other
|
||||
@@ -43,13 +43,13 @@ public final class HdmiTvClient extends HdmiClient {
|
||||
*/
|
||||
public static final int VENDOR_DATA_SIZE = 16;
|
||||
|
||||
HdmiTvClient(IHdmiControlService service) {
|
||||
/* package */ HdmiTvClient(IHdmiControlService service) {
|
||||
super(service);
|
||||
}
|
||||
|
||||
// Factory method for HdmiTvClient.
|
||||
// Declared package-private. Accessed by HdmiControlManager only.
|
||||
static HdmiTvClient create(IHdmiControlService service) {
|
||||
/* package */ static HdmiTvClient create(IHdmiControlService service) {
|
||||
return new HdmiTvClient(service);
|
||||
}
|
||||
|
||||
@@ -71,7 +71,7 @@ public final class HdmiTvClient extends HdmiClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Select a CEC logical device to be a new active source.
|
||||
* Selects a CEC logical device to be a new active source.
|
||||
*
|
||||
* @param logicalAddress logical address of the device to select
|
||||
* @param callback callback to get the result with
|
||||
@@ -98,7 +98,7 @@ public final class HdmiTvClient extends HdmiClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Select a HDMI port to be a new route path.
|
||||
* Selects a HDMI port to be a new route path.
|
||||
*
|
||||
* @param portId HDMI port to select
|
||||
* @param callback callback to get the result with
|
||||
@@ -128,7 +128,7 @@ public final class HdmiTvClient extends HdmiClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the listener used to get informed of the input change event.
|
||||
* Sets the listener used to get informed of the input change event.
|
||||
*
|
||||
* @param listener listener object
|
||||
*/
|
||||
@@ -168,7 +168,7 @@ public final class HdmiTvClient extends HdmiClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Set system audio volume
|
||||
* Sets system audio volume
|
||||
*
|
||||
* @param oldIndex current volume index
|
||||
* @param newIndex volume index to be set
|
||||
@@ -183,7 +183,7 @@ public final class HdmiTvClient extends HdmiClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Set system audio mute status
|
||||
* Sets system audio mute status
|
||||
*
|
||||
* @param mute {@code true} if muted; otherwise, {@code false}
|
||||
*/
|
||||
@@ -196,7 +196,7 @@ public final class HdmiTvClient extends HdmiClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Set record listener
|
||||
* Sets record listener
|
||||
*
|
||||
* @param listener
|
||||
*/
|
||||
@@ -216,7 +216,7 @@ public final class HdmiTvClient extends HdmiClient {
|
||||
@Override
|
||||
public byte[] getOneTouchRecordSource(int recorderAddress) {
|
||||
HdmiRecordSources.RecordSource source =
|
||||
callback.getOneTouchRecordSource(recorderAddress);
|
||||
callback.onOneTouchRecordSourceRequested(recorderAddress);
|
||||
if (source == null) {
|
||||
return EmptyArray.BYTE;
|
||||
}
|
||||
@@ -244,13 +244,13 @@ public final class HdmiTvClient extends HdmiClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Start one touch recording with the given recorder address and recorder source.
|
||||
* Starts one touch recording with the given recorder address and recorder source.
|
||||
* <p>
|
||||
* Usage
|
||||
* <pre>
|
||||
* HdmiTvClient tvClient = ....;
|
||||
* // for own source.
|
||||
* OwnSource ownSource = ownHdmiRecordSources.ownSource();
|
||||
* OwnSource ownSource = HdmiRecordSources.ofOwnSource();
|
||||
* tvClient.startOneTouchRecord(recorderAddress, ownSource);
|
||||
* </pre>
|
||||
*/
|
||||
@@ -269,7 +269,7 @@ public final class HdmiTvClient extends HdmiClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Stop one touch record.
|
||||
* Stops one touch record.
|
||||
*
|
||||
* @param recorderAddress recorder address where recoding will be stopped
|
||||
*/
|
||||
@@ -282,7 +282,7 @@ public final class HdmiTvClient extends HdmiClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Start timer recording with the given recoder address and recorder source.
|
||||
* Starts timer recording with the given recoder address and recorder source.
|
||||
* <p>
|
||||
* Usage
|
||||
* <pre>
|
||||
@@ -331,7 +331,7 @@ public final class HdmiTvClient extends HdmiClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Clear timer recording with the given recorder address and recording source.
|
||||
* Clears timer recording with the given recorder address and recording source.
|
||||
* For more details, please refer {@link #startTimerRecording(int, int, TimerRecordSource)}.
|
||||
*/
|
||||
public void clearTimerRecording(int recorderAddress, int sourceType, TimerRecordSource source) {
|
||||
@@ -357,7 +357,7 @@ public final class HdmiTvClient extends HdmiClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Set {@link HdmiMhlVendorCommandListener} to get incoming MHL vendor command.
|
||||
* Sets {@link HdmiMhlVendorCommandListener} to get incoming MHL vendor command.
|
||||
*
|
||||
* @param listener to receive incoming MHL vendor command
|
||||
*/
|
||||
@@ -383,7 +383,7 @@ public final class HdmiTvClient extends HdmiClient {
|
||||
}
|
||||
|
||||
/**
|
||||
* Send MHL vendor command to the device connected to a port of the given portId.
|
||||
* Sends MHL vendor command to the device connected to a port of the given portId.
|
||||
*
|
||||
* @param portId id of port to send MHL vendor command
|
||||
* @param offset offset in the in given data
|
||||
|
||||
@@ -2087,7 +2087,7 @@ public final class HdmiControlService extends SystemService {
|
||||
assertRunOnServiceThread();
|
||||
Intent intent = new Intent(HdmiControlManager.ACTION_OSD_MESSAGE);
|
||||
intent.putExtra(HdmiControlManager.EXTRA_MESSAGE_ID, messageId);
|
||||
intent.putExtra(HdmiControlManager.EXTRA_MESSAGE_EXTRAM_PARAM1, extra);
|
||||
intent.putExtra(HdmiControlManager.EXTRA_MESSAGE_EXTRA_PARAM1, extra);
|
||||
getContext().sendBroadcastAsUser(intent, UserHandle.ALL,
|
||||
HdmiControlService.PERMISSION);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user