/*
 * This file is auto-generated.  DO NOT MODIFY.
 * Original file: /var/tmp/code-browser-generator/android_android_9.0.0_r358833596918674107602/combined/android/hardware/usb/IUsbManager.aidl
 */
package android.hardware.usb;
@hide
/** @hide */
public interface IUsbManager extends android.os.IInterface {
Local-side IPC implementation stub class.
/** Local-side IPC implementation stub class. */
public static abstract class Stub extends android.os.Binder implements android.hardware.usb.IUsbManager { private static final java.lang.String DESCRIPTOR = "android.hardware.usb.IUsbManager";
Construct the stub at attach it to the interface.
/** Construct the stub at attach it to the interface. */
public Stub() { this.attachInterface(this, DESCRIPTOR); }
Cast an IBinder object into an android.hardware.usb.IUsbManager interface, generating a proxy if needed.
/** * Cast an IBinder object into an android.hardware.usb.IUsbManager interface, * generating a proxy if needed. */
public static android.hardware.usb.IUsbManager asInterface(android.os.IBinder obj) { if ((obj==null)) { return null; } android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); if (((iin!=null)&&(iin instanceof android.hardware.usb.IUsbManager))) { return ((android.hardware.usb.IUsbManager)iin); } return new android.hardware.usb.IUsbManager.Stub.Proxy(obj); } @Override public android.os.IBinder asBinder() { return this; } @Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException { java.lang.String descriptor = DESCRIPTOR; switch (code) { case INTERFACE_TRANSACTION: { reply.writeString(descriptor); return true; } case TRANSACTION_getDeviceList: { data.enforceInterface(descriptor); android.os.Bundle _arg0; _arg0 = new android.os.Bundle(); this.getDeviceList(_arg0); reply.writeNoException(); if ((_arg0!=null)) { reply.writeInt(1); _arg0.writeToParcel(reply, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); } else { reply.writeInt(0); } return true; } case TRANSACTION_openDevice: { data.enforceInterface(descriptor); java.lang.String _arg0; _arg0 = data.readString(); java.lang.String _arg1; _arg1 = data.readString(); android.os.ParcelFileDescriptor _result = this.openDevice(_arg0, _arg1); reply.writeNoException(); if ((_result!=null)) { reply.writeInt(1); _result.writeToParcel(reply, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); } else { reply.writeInt(0); } return true; } case TRANSACTION_getCurrentAccessory: { data.enforceInterface(descriptor); android.hardware.usb.UsbAccessory _result = this.getCurrentAccessory(); reply.writeNoException(); if ((_result!=null)) { reply.writeInt(1); _result.writeToParcel(reply, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); } else { reply.writeInt(0); } return true; } case TRANSACTION_openAccessory: { data.enforceInterface(descriptor); android.hardware.usb.UsbAccessory _arg0; if ((0!=data.readInt())) { _arg0 = android.hardware.usb.UsbAccessory.CREATOR.createFromParcel(data); } else { _arg0 = null; } android.os.ParcelFileDescriptor _result = this.openAccessory(_arg0); reply.writeNoException(); if ((_result!=null)) { reply.writeInt(1); _result.writeToParcel(reply, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); } else { reply.writeInt(0); } return true; } case TRANSACTION_setDevicePackage: { data.enforceInterface(descriptor); android.hardware.usb.UsbDevice _arg0; if ((0!=data.readInt())) { _arg0 = android.hardware.usb.UsbDevice.CREATOR.createFromParcel(data); } else { _arg0 = null; } java.lang.String _arg1; _arg1 = data.readString(); int _arg2; _arg2 = data.readInt(); this.setDevicePackage(_arg0, _arg1, _arg2); reply.writeNoException(); return true; } case TRANSACTION_setAccessoryPackage: { data.enforceInterface(descriptor); android.hardware.usb.UsbAccessory _arg0; if ((0!=data.readInt())) { _arg0 = android.hardware.usb.UsbAccessory.CREATOR.createFromParcel(data); } else { _arg0 = null; } java.lang.String _arg1; _arg1 = data.readString(); int _arg2; _arg2 = data.readInt(); this.setAccessoryPackage(_arg0, _arg1, _arg2); reply.writeNoException(); return true; } case TRANSACTION_hasDevicePermission: { data.enforceInterface(descriptor); android.hardware.usb.UsbDevice _arg0; if ((0!=data.readInt())) { _arg0 = android.hardware.usb.UsbDevice.CREATOR.createFromParcel(data); } else { _arg0 = null; } java.lang.String _arg1; _arg1 = data.readString(); boolean _result = this.hasDevicePermission(_arg0, _arg1); reply.writeNoException(); reply.writeInt(((_result)?(1):(0))); return true; } case TRANSACTION_hasAccessoryPermission: { data.enforceInterface(descriptor); android.hardware.usb.UsbAccessory _arg0; if ((0!=data.readInt())) { _arg0 = android.hardware.usb.UsbAccessory.CREATOR.createFromParcel(data); } else { _arg0 = null; } boolean _result = this.hasAccessoryPermission(_arg0); reply.writeNoException(); reply.writeInt(((_result)?(1):(0))); return true; } case TRANSACTION_requestDevicePermission: { data.enforceInterface(descriptor); android.hardware.usb.UsbDevice _arg0; if ((0!=data.readInt())) { _arg0 = android.hardware.usb.UsbDevice.CREATOR.createFromParcel(data); } else { _arg0 = null; } java.lang.String _arg1; _arg1 = data.readString(); android.app.PendingIntent _arg2; if ((0!=data.readInt())) { _arg2 = android.app.PendingIntent.CREATOR.createFromParcel(data); } else { _arg2 = null; } this.requestDevicePermission(_arg0, _arg1, _arg2); reply.writeNoException(); return true; } case TRANSACTION_requestAccessoryPermission: { data.enforceInterface(descriptor); android.hardware.usb.UsbAccessory _arg0; if ((0!=data.readInt())) { _arg0 = android.hardware.usb.UsbAccessory.CREATOR.createFromParcel(data); } else { _arg0 = null; } java.lang.String _arg1; _arg1 = data.readString(); android.app.PendingIntent _arg2; if ((0!=data.readInt())) { _arg2 = android.app.PendingIntent.CREATOR.createFromParcel(data); } else { _arg2 = null; } this.requestAccessoryPermission(_arg0, _arg1, _arg2); reply.writeNoException(); return true; } case TRANSACTION_grantDevicePermission: { data.enforceInterface(descriptor); android.hardware.usb.UsbDevice _arg0; if ((0!=data.readInt())) { _arg0 = android.hardware.usb.UsbDevice.CREATOR.createFromParcel(data); } else { _arg0 = null; } int _arg1; _arg1 = data.readInt(); this.grantDevicePermission(_arg0, _arg1); reply.writeNoException(); return true; } case TRANSACTION_grantAccessoryPermission: { data.enforceInterface(descriptor); android.hardware.usb.UsbAccessory _arg0; if ((0!=data.readInt())) { _arg0 = android.hardware.usb.UsbAccessory.CREATOR.createFromParcel(data); } else { _arg0 = null; } int _arg1; _arg1 = data.readInt(); this.grantAccessoryPermission(_arg0, _arg1); reply.writeNoException(); return true; } case TRANSACTION_hasDefaults: { data.enforceInterface(descriptor); java.lang.String _arg0; _arg0 = data.readString(); int _arg1; _arg1 = data.readInt(); boolean _result = this.hasDefaults(_arg0, _arg1); reply.writeNoException(); reply.writeInt(((_result)?(1):(0))); return true; } case TRANSACTION_clearDefaults: { data.enforceInterface(descriptor); java.lang.String _arg0; _arg0 = data.readString(); int _arg1; _arg1 = data.readInt(); this.clearDefaults(_arg0, _arg1); reply.writeNoException(); return true; } case TRANSACTION_isFunctionEnabled: { data.enforceInterface(descriptor); java.lang.String _arg0; _arg0 = data.readString(); boolean _result = this.isFunctionEnabled(_arg0); reply.writeNoException(); reply.writeInt(((_result)?(1):(0))); return true; } case TRANSACTION_setCurrentFunctions: { data.enforceInterface(descriptor); long _arg0; _arg0 = data.readLong(); this.setCurrentFunctions(_arg0); reply.writeNoException(); return true; } case TRANSACTION_setCurrentFunction: { data.enforceInterface(descriptor); java.lang.String _arg0; _arg0 = data.readString(); boolean _arg1; _arg1 = (0!=data.readInt()); this.setCurrentFunction(_arg0, _arg1); reply.writeNoException(); return true; } case TRANSACTION_getCurrentFunctions: { data.enforceInterface(descriptor); long _result = this.getCurrentFunctions(); reply.writeNoException(); reply.writeLong(_result); return true; } case TRANSACTION_setScreenUnlockedFunctions: { data.enforceInterface(descriptor); long _arg0; _arg0 = data.readLong(); this.setScreenUnlockedFunctions(_arg0); reply.writeNoException(); return true; } case TRANSACTION_getScreenUnlockedFunctions: { data.enforceInterface(descriptor); long _result = this.getScreenUnlockedFunctions(); reply.writeNoException(); reply.writeLong(_result); return true; } case TRANSACTION_getControlFd: { data.enforceInterface(descriptor); long _arg0; _arg0 = data.readLong(); android.os.ParcelFileDescriptor _result = this.getControlFd(_arg0); reply.writeNoException(); if ((_result!=null)) { reply.writeInt(1); _result.writeToParcel(reply, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); } else { reply.writeInt(0); } return true; } case TRANSACTION_allowUsbDebugging: { data.enforceInterface(descriptor); boolean _arg0; _arg0 = (0!=data.readInt()); java.lang.String _arg1; _arg1 = data.readString(); this.allowUsbDebugging(_arg0, _arg1); reply.writeNoException(); return true; } case TRANSACTION_denyUsbDebugging: { data.enforceInterface(descriptor); this.denyUsbDebugging(); reply.writeNoException(); return true; } case TRANSACTION_clearUsbDebuggingKeys: { data.enforceInterface(descriptor); this.clearUsbDebuggingKeys(); reply.writeNoException(); return true; } case TRANSACTION_getPorts: { data.enforceInterface(descriptor); android.hardware.usb.UsbPort[] _result = this.getPorts(); reply.writeNoException(); reply.writeTypedArray(_result, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); return true; } case TRANSACTION_getPortStatus: { data.enforceInterface(descriptor); java.lang.String _arg0; _arg0 = data.readString(); android.hardware.usb.UsbPortStatus _result = this.getPortStatus(_arg0); reply.writeNoException(); if ((_result!=null)) { reply.writeInt(1); _result.writeToParcel(reply, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); } else { reply.writeInt(0); } return true; } case TRANSACTION_setPortRoles: { data.enforceInterface(descriptor); java.lang.String _arg0; _arg0 = data.readString(); int _arg1; _arg1 = data.readInt(); int _arg2; _arg2 = data.readInt(); this.setPortRoles(_arg0, _arg1, _arg2); reply.writeNoException(); return true; } case TRANSACTION_setUsbDeviceConnectionHandler: { data.enforceInterface(descriptor); android.content.ComponentName _arg0; if ((0!=data.readInt())) { _arg0 = android.content.ComponentName.CREATOR.createFromParcel(data); } else { _arg0 = null; } this.setUsbDeviceConnectionHandler(_arg0); reply.writeNoException(); return true; } default: { return super.onTransact(code, data, reply, flags); } } } private static class Proxy implements android.hardware.usb.IUsbManager { private android.os.IBinder mRemote; Proxy(android.os.IBinder remote) { mRemote = remote; } @Override public android.os.IBinder asBinder() { return mRemote; } public java.lang.String getInterfaceDescriptor() { return DESCRIPTOR; } /* Returns a list of all currently attached USB devices */ @Override public void getDeviceList(android.os.Bundle devices) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); try { _data.writeInterfaceToken(DESCRIPTOR); mRemote.transact(Stub.TRANSACTION_getDeviceList, _data, _reply, 0); _reply.readException(); if ((0!=_reply.readInt())) { devices.readFromParcel(_reply); } } finally { _reply.recycle(); _data.recycle(); } } /* Returns a file descriptor for communicating with the USB device. * The native fd can be passed to usb_device_new() in libusbhost. */ @Override public android.os.ParcelFileDescriptor openDevice(java.lang.String deviceName, java.lang.String packageName) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); android.os.ParcelFileDescriptor _result; try { _data.writeInterfaceToken(DESCRIPTOR); _data.writeString(deviceName); _data.writeString(packageName); mRemote.transact(Stub.TRANSACTION_openDevice, _data, _reply, 0); _reply.readException(); if ((0!=_reply.readInt())) { _result = android.os.ParcelFileDescriptor.CREATOR.createFromParcel(_reply); } else { _result = null; } } finally { _reply.recycle(); _data.recycle(); } return _result; } /* Returns the currently attached USB accessory */ @Override public android.hardware.usb.UsbAccessory getCurrentAccessory() throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); android.hardware.usb.UsbAccessory _result; try { _data.writeInterfaceToken(DESCRIPTOR); mRemote.transact(Stub.TRANSACTION_getCurrentAccessory, _data, _reply, 0); _reply.readException(); if ((0!=_reply.readInt())) { _result = android.hardware.usb.UsbAccessory.CREATOR.createFromParcel(_reply); } else { _result = null; } } finally { _reply.recycle(); _data.recycle(); } return _result; } /* Returns a file descriptor for communicating with the USB accessory. * This file descriptor can be used with standard Java file operations. */ @Override public android.os.ParcelFileDescriptor openAccessory(android.hardware.usb.UsbAccessory accessory) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); android.os.ParcelFileDescriptor _result; try { _data.writeInterfaceToken(DESCRIPTOR); if ((accessory!=null)) { _data.writeInt(1); accessory.writeToParcel(_data, 0); } else { _data.writeInt(0); } mRemote.transact(Stub.TRANSACTION_openAccessory, _data, _reply, 0); _reply.readException(); if ((0!=_reply.readInt())) { _result = android.os.ParcelFileDescriptor.CREATOR.createFromParcel(_reply); } else { _result = null; } } finally { _reply.recycle(); _data.recycle(); } return _result; } /* Sets the default package for a USB device * (or clears it if the package name is null) */ @Override public void setDevicePackage(android.hardware.usb.UsbDevice device, java.lang.String packageName, int userId) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); try { _data.writeInterfaceToken(DESCRIPTOR); if ((device!=null)) { _data.writeInt(1); device.writeToParcel(_data, 0); } else { _data.writeInt(0); } _data.writeString(packageName); _data.writeInt(userId); mRemote.transact(Stub.TRANSACTION_setDevicePackage, _data, _reply, 0); _reply.readException(); } finally { _reply.recycle(); _data.recycle(); } } /* Sets the default package for a USB accessory * (or clears it if the package name is null) */ @Override public void setAccessoryPackage(android.hardware.usb.UsbAccessory accessory, java.lang.String packageName, int userId) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); try { _data.writeInterfaceToken(DESCRIPTOR); if ((accessory!=null)) { _data.writeInt(1); accessory.writeToParcel(_data, 0); } else { _data.writeInt(0); } _data.writeString(packageName); _data.writeInt(userId); mRemote.transact(Stub.TRANSACTION_setAccessoryPackage, _data, _reply, 0); _reply.readException(); } finally { _reply.recycle(); _data.recycle(); } } /* Returns true if the caller has permission to access the device. */ @Override public boolean hasDevicePermission(android.hardware.usb.UsbDevice device, java.lang.String packageName) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); boolean _result; try { _data.writeInterfaceToken(DESCRIPTOR); if ((device!=null)) { _data.writeInt(1); device.writeToParcel(_data, 0); } else { _data.writeInt(0); } _data.writeString(packageName); mRemote.transact(Stub.TRANSACTION_hasDevicePermission, _data, _reply, 0); _reply.readException(); _result = (0!=_reply.readInt()); } finally { _reply.recycle(); _data.recycle(); } return _result; } /* Returns true if the caller has permission to access the accessory. */ @Override public boolean hasAccessoryPermission(android.hardware.usb.UsbAccessory accessory) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); boolean _result; try { _data.writeInterfaceToken(DESCRIPTOR); if ((accessory!=null)) { _data.writeInt(1); accessory.writeToParcel(_data, 0); } else { _data.writeInt(0); } mRemote.transact(Stub.TRANSACTION_hasAccessoryPermission, _data, _reply, 0); _reply.readException(); _result = (0!=_reply.readInt()); } finally { _reply.recycle(); _data.recycle(); } return _result; } /* Requests permission for the given package to access the device. * Will display a system dialog to query the user if permission * had not already been given. */ @Override public void requestDevicePermission(android.hardware.usb.UsbDevice device, java.lang.String packageName, android.app.PendingIntent pi) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); try { _data.writeInterfaceToken(DESCRIPTOR); if ((device!=null)) { _data.writeInt(1); device.writeToParcel(_data, 0); } else { _data.writeInt(0); } _data.writeString(packageName); if ((pi!=null)) { _data.writeInt(1); pi.writeToParcel(_data, 0); } else { _data.writeInt(0); } mRemote.transact(Stub.TRANSACTION_requestDevicePermission, _data, _reply, 0); _reply.readException(); } finally { _reply.recycle(); _data.recycle(); } } /* Requests permission for the given package to access the accessory. * Will display a system dialog to query the user if permission * had not already been given. Result is returned via pi. */ @Override public void requestAccessoryPermission(android.hardware.usb.UsbAccessory accessory, java.lang.String packageName, android.app.PendingIntent pi) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); try { _data.writeInterfaceToken(DESCRIPTOR); if ((accessory!=null)) { _data.writeInt(1); accessory.writeToParcel(_data, 0); } else { _data.writeInt(0); } _data.writeString(packageName); if ((pi!=null)) { _data.writeInt(1); pi.writeToParcel(_data, 0); } else { _data.writeInt(0); } mRemote.transact(Stub.TRANSACTION_requestAccessoryPermission, _data, _reply, 0); _reply.readException(); } finally { _reply.recycle(); _data.recycle(); } } /* Grants permission for the given UID to access the device */ @Override public void grantDevicePermission(android.hardware.usb.UsbDevice device, int uid) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); try { _data.writeInterfaceToken(DESCRIPTOR); if ((device!=null)) { _data.writeInt(1); device.writeToParcel(_data, 0); } else { _data.writeInt(0); } _data.writeInt(uid); mRemote.transact(Stub.TRANSACTION_grantDevicePermission, _data, _reply, 0); _reply.readException(); } finally { _reply.recycle(); _data.recycle(); } } /* Grants permission for the given UID to access the accessory */ @Override public void grantAccessoryPermission(android.hardware.usb.UsbAccessory accessory, int uid) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); try { _data.writeInterfaceToken(DESCRIPTOR); if ((accessory!=null)) { _data.writeInt(1); accessory.writeToParcel(_data, 0); } else { _data.writeInt(0); } _data.writeInt(uid); mRemote.transact(Stub.TRANSACTION_grantAccessoryPermission, _data, _reply, 0); _reply.readException(); } finally { _reply.recycle(); _data.recycle(); } } /* Returns true if the USB manager has default preferences or permissions for the package */ @Override public boolean hasDefaults(java.lang.String packageName, int userId) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); boolean _result; try { _data.writeInterfaceToken(DESCRIPTOR); _data.writeString(packageName); _data.writeInt(userId); mRemote.transact(Stub.TRANSACTION_hasDefaults, _data, _reply, 0); _reply.readException(); _result = (0!=_reply.readInt()); } finally { _reply.recycle(); _data.recycle(); } return _result; } /* Clears default preferences and permissions for the package */ @Override public void clearDefaults(java.lang.String packageName, int userId) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); try { _data.writeInterfaceToken(DESCRIPTOR); _data.writeString(packageName); _data.writeInt(userId); mRemote.transact(Stub.TRANSACTION_clearDefaults, _data, _reply, 0); _reply.readException(); } finally { _reply.recycle(); _data.recycle(); } } /* Returns true if the specified USB function is enabled. */ @Override public boolean isFunctionEnabled(java.lang.String function) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); boolean _result; try { _data.writeInterfaceToken(DESCRIPTOR); _data.writeString(function); mRemote.transact(Stub.TRANSACTION_isFunctionEnabled, _data, _reply, 0); _reply.readException(); _result = (0!=_reply.readInt()); } finally { _reply.recycle(); _data.recycle(); } return _result; } /* Sets the current USB function. */ @Override public void setCurrentFunctions(long functions) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); try { _data.writeInterfaceToken(DESCRIPTOR); _data.writeLong(functions); mRemote.transact(Stub.TRANSACTION_setCurrentFunctions, _data, _reply, 0); _reply.readException(); } finally { _reply.recycle(); _data.recycle(); } } /* Compatibility version of setCurrentFunctions(long). */ @Override public void setCurrentFunction(java.lang.String function, boolean usbDataUnlocked) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); try { _data.writeInterfaceToken(DESCRIPTOR); _data.writeString(function); _data.writeInt(((usbDataUnlocked)?(1):(0))); mRemote.transact(Stub.TRANSACTION_setCurrentFunction, _data, _reply, 0); _reply.readException(); } finally { _reply.recycle(); _data.recycle(); } } /* Gets the current USB functions. */ @Override public long getCurrentFunctions() throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); long _result; try { _data.writeInterfaceToken(DESCRIPTOR); mRemote.transact(Stub.TRANSACTION_getCurrentFunctions, _data, _reply, 0); _reply.readException(); _result = _reply.readLong(); } finally { _reply.recycle(); _data.recycle(); } return _result; } /* Sets the screen unlocked USB function(s), which will be set automatically * when the screen is unlocked. */ @Override public void setScreenUnlockedFunctions(long functions) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); try { _data.writeInterfaceToken(DESCRIPTOR); _data.writeLong(functions); mRemote.transact(Stub.TRANSACTION_setScreenUnlockedFunctions, _data, _reply, 0); _reply.readException(); } finally { _reply.recycle(); _data.recycle(); } } /* Gets the current screen unlocked functions. */ @Override public long getScreenUnlockedFunctions() throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); long _result; try { _data.writeInterfaceToken(DESCRIPTOR); mRemote.transact(Stub.TRANSACTION_getScreenUnlockedFunctions, _data, _reply, 0); _reply.readException(); _result = _reply.readLong(); } finally { _reply.recycle(); _data.recycle(); } return _result; } /* Get the functionfs control handle for the given function. Usb * descriptors will already be written, and the handle will be * ready to use. */ @Override public android.os.ParcelFileDescriptor getControlFd(long function) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); android.os.ParcelFileDescriptor _result; try { _data.writeInterfaceToken(DESCRIPTOR); _data.writeLong(function); mRemote.transact(Stub.TRANSACTION_getControlFd, _data, _reply, 0); _reply.readException(); if ((0!=_reply.readInt())) { _result = android.os.ParcelFileDescriptor.CREATOR.createFromParcel(_reply); } else { _result = null; } } finally { _reply.recycle(); _data.recycle(); } return _result; } /* Allow USB debugging from the attached host. If alwaysAllow is true, add the * the public key to list of host keys that the user has approved. */ @Override public void allowUsbDebugging(boolean alwaysAllow, java.lang.String publicKey) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); try { _data.writeInterfaceToken(DESCRIPTOR); _data.writeInt(((alwaysAllow)?(1):(0))); _data.writeString(publicKey); mRemote.transact(Stub.TRANSACTION_allowUsbDebugging, _data, _reply, 0); _reply.readException(); } finally { _reply.recycle(); _data.recycle(); } } /* Deny USB debugging from the attached host */ @Override public void denyUsbDebugging() throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); try { _data.writeInterfaceToken(DESCRIPTOR); mRemote.transact(Stub.TRANSACTION_denyUsbDebugging, _data, _reply, 0); _reply.readException(); } finally { _reply.recycle(); _data.recycle(); } } /* Clear public keys installed for secure USB debugging */ @Override public void clearUsbDebuggingKeys() throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); try { _data.writeInterfaceToken(DESCRIPTOR); mRemote.transact(Stub.TRANSACTION_clearUsbDebuggingKeys, _data, _reply, 0); _reply.readException(); } finally { _reply.recycle(); _data.recycle(); } } /* Gets the list of USB ports. */ @Override public android.hardware.usb.UsbPort[] getPorts() throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); android.hardware.usb.UsbPort[] _result; try { _data.writeInterfaceToken(DESCRIPTOR); mRemote.transact(Stub.TRANSACTION_getPorts, _data, _reply, 0); _reply.readException(); _result = _reply.createTypedArray(android.hardware.usb.UsbPort.CREATOR); } finally { _reply.recycle(); _data.recycle(); } return _result; } /* Gets the status of the specified USB port. */ @Override public android.hardware.usb.UsbPortStatus getPortStatus(java.lang.String portId) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); android.hardware.usb.UsbPortStatus _result; try { _data.writeInterfaceToken(DESCRIPTOR); _data.writeString(portId); mRemote.transact(Stub.TRANSACTION_getPortStatus, _data, _reply, 0); _reply.readException(); if ((0!=_reply.readInt())) { _result = android.hardware.usb.UsbPortStatus.CREATOR.createFromParcel(_reply); } else { _result = null; } } finally { _reply.recycle(); _data.recycle(); } return _result; } /* Sets the port's current role. */ @Override public void setPortRoles(java.lang.String portId, int powerRole, int dataRole) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); try { _data.writeInterfaceToken(DESCRIPTOR); _data.writeString(portId); _data.writeInt(powerRole); _data.writeInt(dataRole); mRemote.transact(Stub.TRANSACTION_setPortRoles, _data, _reply, 0); _reply.readException(); } finally { _reply.recycle(); _data.recycle(); } } /* Sets USB device connection handler. */ @Override public void setUsbDeviceConnectionHandler(android.content.ComponentName usbDeviceConnectionHandler) throws android.os.RemoteException { android.os.Parcel _data = android.os.Parcel.obtain(); android.os.Parcel _reply = android.os.Parcel.obtain(); try { _data.writeInterfaceToken(DESCRIPTOR); if ((usbDeviceConnectionHandler!=null)) { _data.writeInt(1); usbDeviceConnectionHandler.writeToParcel(_data, 0); } else { _data.writeInt(0); } mRemote.transact(Stub.TRANSACTION_setUsbDeviceConnectionHandler, _data, _reply, 0); _reply.readException(); } finally { _reply.recycle(); _data.recycle(); } } } static final int TRANSACTION_getDeviceList = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); static final int TRANSACTION_openDevice = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); static final int TRANSACTION_getCurrentAccessory = (android.os.IBinder.FIRST_CALL_TRANSACTION + 2); static final int TRANSACTION_openAccessory = (android.os.IBinder.FIRST_CALL_TRANSACTION + 3); static final int TRANSACTION_setDevicePackage = (android.os.IBinder.FIRST_CALL_TRANSACTION + 4); static final int TRANSACTION_setAccessoryPackage = (android.os.IBinder.FIRST_CALL_TRANSACTION + 5); static final int TRANSACTION_hasDevicePermission = (android.os.IBinder.FIRST_CALL_TRANSACTION + 6); static final int TRANSACTION_hasAccessoryPermission = (android.os.IBinder.FIRST_CALL_TRANSACTION + 7); static final int TRANSACTION_requestDevicePermission = (android.os.IBinder.FIRST_CALL_TRANSACTION + 8); static final int TRANSACTION_requestAccessoryPermission = (android.os.IBinder.FIRST_CALL_TRANSACTION + 9); static final int TRANSACTION_grantDevicePermission = (android.os.IBinder.FIRST_CALL_TRANSACTION + 10); static final int TRANSACTION_grantAccessoryPermission = (android.os.IBinder.FIRST_CALL_TRANSACTION + 11); static final int TRANSACTION_hasDefaults = (android.os.IBinder.FIRST_CALL_TRANSACTION + 12); static final int TRANSACTION_clearDefaults = (android.os.IBinder.FIRST_CALL_TRANSACTION + 13); static final int TRANSACTION_isFunctionEnabled = (android.os.IBinder.FIRST_CALL_TRANSACTION + 14); static final int TRANSACTION_setCurrentFunctions = (android.os.IBinder.FIRST_CALL_TRANSACTION + 15); static final int TRANSACTION_setCurrentFunction = (android.os.IBinder.FIRST_CALL_TRANSACTION + 16); static final int TRANSACTION_getCurrentFunctions = (android.os.IBinder.FIRST_CALL_TRANSACTION + 17); static final int TRANSACTION_setScreenUnlockedFunctions = (android.os.IBinder.FIRST_CALL_TRANSACTION + 18); static final int TRANSACTION_getScreenUnlockedFunctions = (android.os.IBinder.FIRST_CALL_TRANSACTION + 19); static final int TRANSACTION_getControlFd = (android.os.IBinder.FIRST_CALL_TRANSACTION + 20); static final int TRANSACTION_allowUsbDebugging = (android.os.IBinder.FIRST_CALL_TRANSACTION + 21); static final int TRANSACTION_denyUsbDebugging = (android.os.IBinder.FIRST_CALL_TRANSACTION + 22); static final int TRANSACTION_clearUsbDebuggingKeys = (android.os.IBinder.FIRST_CALL_TRANSACTION + 23); static final int TRANSACTION_getPorts = (android.os.IBinder.FIRST_CALL_TRANSACTION + 24); static final int TRANSACTION_getPortStatus = (android.os.IBinder.FIRST_CALL_TRANSACTION + 25); static final int TRANSACTION_setPortRoles = (android.os.IBinder.FIRST_CALL_TRANSACTION + 26); static final int TRANSACTION_setUsbDeviceConnectionHandler = (android.os.IBinder.FIRST_CALL_TRANSACTION + 27); } /* Returns a list of all currently attached USB devices */ public void getDeviceList(android.os.Bundle devices) throws android.os.RemoteException; /* Returns a file descriptor for communicating with the USB device. * The native fd can be passed to usb_device_new() in libusbhost. */ public android.os.ParcelFileDescriptor openDevice(java.lang.String deviceName, java.lang.String packageName) throws android.os.RemoteException; /* Returns the currently attached USB accessory */ public android.hardware.usb.UsbAccessory getCurrentAccessory() throws android.os.RemoteException; /* Returns a file descriptor for communicating with the USB accessory. * This file descriptor can be used with standard Java file operations. */ public android.os.ParcelFileDescriptor openAccessory(android.hardware.usb.UsbAccessory accessory) throws android.os.RemoteException; /* Sets the default package for a USB device * (or clears it if the package name is null) */ public void setDevicePackage(android.hardware.usb.UsbDevice device, java.lang.String packageName, int userId) throws android.os.RemoteException; /* Sets the default package for a USB accessory * (or clears it if the package name is null) */ public void setAccessoryPackage(android.hardware.usb.UsbAccessory accessory, java.lang.String packageName, int userId) throws android.os.RemoteException; /* Returns true if the caller has permission to access the device. */ public boolean hasDevicePermission(android.hardware.usb.UsbDevice device, java.lang.String packageName) throws android.os.RemoteException; /* Returns true if the caller has permission to access the accessory. */ public boolean hasAccessoryPermission(android.hardware.usb.UsbAccessory accessory) throws android.os.RemoteException; /* Requests permission for the given package to access the device. * Will display a system dialog to query the user if permission * had not already been given. */ public void requestDevicePermission(android.hardware.usb.UsbDevice device, java.lang.String packageName, android.app.PendingIntent pi) throws android.os.RemoteException; /* Requests permission for the given package to access the accessory. * Will display a system dialog to query the user if permission * had not already been given. Result is returned via pi. */ public void requestAccessoryPermission(android.hardware.usb.UsbAccessory accessory, java.lang.String packageName, android.app.PendingIntent pi) throws android.os.RemoteException; /* Grants permission for the given UID to access the device */ public void grantDevicePermission(android.hardware.usb.UsbDevice device, int uid) throws android.os.RemoteException; /* Grants permission for the given UID to access the accessory */ public void grantAccessoryPermission(android.hardware.usb.UsbAccessory accessory, int uid) throws android.os.RemoteException; /* Returns true if the USB manager has default preferences or permissions for the package */ public boolean hasDefaults(java.lang.String packageName, int userId) throws android.os.RemoteException; /* Clears default preferences and permissions for the package */ public void clearDefaults(java.lang.String packageName, int userId) throws android.os.RemoteException; /* Returns true if the specified USB function is enabled. */ public boolean isFunctionEnabled(java.lang.String function) throws android.os.RemoteException; /* Sets the current USB function. */ public void setCurrentFunctions(long functions) throws android.os.RemoteException; /* Compatibility version of setCurrentFunctions(long). */ public void setCurrentFunction(java.lang.String function, boolean usbDataUnlocked) throws android.os.RemoteException; /* Gets the current USB functions. */ public long getCurrentFunctions() throws android.os.RemoteException; /* Sets the screen unlocked USB function(s), which will be set automatically * when the screen is unlocked. */ public void setScreenUnlockedFunctions(long functions) throws android.os.RemoteException; /* Gets the current screen unlocked functions. */ public long getScreenUnlockedFunctions() throws android.os.RemoteException; /* Get the functionfs control handle for the given function. Usb * descriptors will already be written, and the handle will be * ready to use. */ public android.os.ParcelFileDescriptor getControlFd(long function) throws android.os.RemoteException; /* Allow USB debugging from the attached host. If alwaysAllow is true, add the * the public key to list of host keys that the user has approved. */ public void allowUsbDebugging(boolean alwaysAllow, java.lang.String publicKey) throws android.os.RemoteException; /* Deny USB debugging from the attached host */ public void denyUsbDebugging() throws android.os.RemoteException; /* Clear public keys installed for secure USB debugging */ public void clearUsbDebuggingKeys() throws android.os.RemoteException; /* Gets the list of USB ports. */ public android.hardware.usb.UsbPort[] getPorts() throws android.os.RemoteException; /* Gets the status of the specified USB port. */ public android.hardware.usb.UsbPortStatus getPortStatus(java.lang.String portId) throws android.os.RemoteException; /* Sets the port's current role. */ public void setPortRoles(java.lang.String portId, int powerRole, int dataRole) throws android.os.RemoteException; /* Sets USB device connection handler. */ public void setUsbDeviceConnectionHandler(android.content.ComponentName usbDeviceConnectionHandler) throws android.os.RemoteException; }