Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b0976320 authored by Mike Lockwood's avatar Mike Lockwood Committed by Android (Google) Code Review
Browse files

Merge "DO NOT MERGE: Backport more USB accessory changes from honeycomb" into gingerbread

parents 0a98226e 638d7cb3
Loading
Loading
Loading
Loading
+24 −5
Original line number Diff line number Diff line
@@ -34,18 +34,20 @@ public class UsbAccessory implements Parcelable {
    private final String mDescription;
    private final String mVersion;
    private final String mUri;
    private final String mSerial;

    /**
     * UsbAccessory should only be instantiated by UsbService implementation
     * @hide
     */
    public UsbAccessory(String manufacturer, String model, String description,
            String version, String uri) {
            String version, String uri, String serial) {
        mManufacturer = manufacturer;
        mModel = model;
        mDescription = description;
        mVersion = version;
        mUri = uri;
        mSerial = serial;
    }

    /**
@@ -58,6 +60,7 @@ public class UsbAccessory implements Parcelable {
        mDescription = strings[2];
        mVersion = strings[3];
        mUri = strings[4];
        mSerial = strings[5];
    }

    /**
@@ -107,6 +110,17 @@ public class UsbAccessory implements Parcelable {
        return mUri;
    }

    /**
     * Returns the unique serial number for the accessory.
     * This is an optional serial number that can be used to differentiate
     * between individual accessories of the same model and manufacturer
     *
     * @return the unique serial number
     */
    public String getSerial() {
        return mSerial;
    }

    private static boolean compare(String s1, String s2) {
        if (s1 == null) return (s2 == null);
        return s1.equals(s2);
@@ -120,7 +134,8 @@ public class UsbAccessory implements Parcelable {
                    compare(mModel, accessory.getModel()) &&
                    compare(mDescription, accessory.getDescription()) &&
                    compare(mVersion, accessory.getVersion()) &&
                    compare(mUri, accessory.getUri()));
                    compare(mUri, accessory.getUri()) &&
                    compare(mSerial, accessory.getSerial()));
        }
        return false;
    }
@@ -131,7 +146,8 @@ public class UsbAccessory implements Parcelable {
                (mModel == null ? 0 : mModel.hashCode()) ^
                (mDescription == null ? 0 : mDescription.hashCode()) ^
                (mVersion == null ? 0 : mVersion.hashCode()) ^
                (mUri == null ? 0 : mUri.hashCode()));
                (mUri == null ? 0 : mUri.hashCode()) ^
                (mSerial == null ? 0 : mSerial.hashCode()));
    }

    @Override
@@ -140,7 +156,8 @@ public class UsbAccessory implements Parcelable {
                            ", mModel=" + mModel +
                            ", mDescription=" + mDescription +
                            ", mVersion=" + mVersion +
                            ", mUri=" + mUri + "]";
                            ", mUri=" + mUri +
                            ", mSerial=" + mSerial + "]";
    }

    public static final Parcelable.Creator<UsbAccessory> CREATOR =
@@ -151,7 +168,8 @@ public class UsbAccessory implements Parcelable {
            String description = in.readString();
            String version = in.readString();
            String uri = in.readString();
            return new UsbAccessory(manufacturer, model, description, version, uri);
            String serial = in.readString();
            return new UsbAccessory(manufacturer, model, description, version, uri, serial);
        }

        public UsbAccessory[] newArray(int size) {
@@ -169,5 +187,6 @@ public class UsbAccessory implements Parcelable {
        parcel.writeString(mDescription);
        parcel.writeString(mVersion);
        parcel.writeString(mUri);
        parcel.writeString(mSerial);
   }
}
+20 −4
Original line number Diff line number Diff line
@@ -19,13 +19,14 @@ package com.android.future.usb;
/**
 * A class representing a USB accessory.
 */
public final class UsbAccessory {
public class UsbAccessory {

    private final String mManufacturer;
    private final String mModel;
    private final String mDescription;
    private final String mVersion;
    private final String mUri;
    private final String mSerial;

    /* package */ UsbAccessory(android.hardware.usb.UsbAccessory accessory) {
        mManufacturer = accessory.getManufacturer();
@@ -33,6 +34,7 @@ public final class UsbAccessory {
        mDescription = accessory.getDescription();
        mVersion = accessory.getVersion();
        mUri = accessory.getUri();
        mSerial = accessory.getSerial();
    }

    /**
@@ -82,6 +84,17 @@ public final class UsbAccessory {
        return mUri;
    }

    /**
     * Returns the unique serial number for the accessory.
     * This is an optional serial number that can be used to differentiate
     * between individual accessories of the same model and manufacturer
     *
     * @return the unique serial number
     */
    public String getSerial() {
        return mSerial;
    }

    private static boolean compare(String s1, String s2) {
        if (s1 == null) return (s2 == null);
        return s1.equals(s2);
@@ -95,7 +108,8 @@ public final class UsbAccessory {
                    compare(mModel, accessory.getModel()) &&
                    compare(mDescription, accessory.getDescription()) &&
                    compare(mVersion, accessory.getVersion()) &&
                    compare(mUri, accessory.getUri()));
                    compare(mUri, accessory.getUri()) &&
                    compare(mSerial, accessory.getSerial()));
        }
        return false;
    }
@@ -106,7 +120,8 @@ public final class UsbAccessory {
                (mModel == null ? 0 : mModel.hashCode()) ^
                (mDescription == null ? 0 : mDescription.hashCode()) ^
                (mVersion == null ? 0 : mVersion.hashCode()) ^
                (mUri == null ? 0 : mUri.hashCode()));
                (mUri == null ? 0 : mUri.hashCode()) ^
                (mSerial == null ? 0 : mSerial.hashCode()));
    }

    @Override
@@ -115,6 +130,7 @@ public final class UsbAccessory {
                            ", mModel=" + mModel +
                            ", mDescription=" + mDescription +
                            ", mVersion=" + mVersion +
                            ", mUri=" + mUri + "]";
                            ", mUri=" + mUri +
                            ", mSerial=" + mSerial + "]";
    }
}
+6 −3
Original line number Diff line number Diff line
@@ -130,7 +130,8 @@ public class UsbManager {
        try {
            return mService.openAccessory(new android.hardware.usb.UsbAccessory(
                    accessory.getManufacturer(),accessory.getModel(),
                    accessory.getDescription(), accessory.getVersion(), accessory.getUri()));
                    accessory.getDescription(), accessory.getVersion(),
                    accessory.getUri(), accessory.getSerial()));
        } catch (RemoteException e) {
            Log.e(TAG, "RemoteException in openAccessory" , e);
            return null;
@@ -150,7 +151,8 @@ public class UsbManager {
        try {
            return mService.hasAccessoryPermission(new android.hardware.usb.UsbAccessory(
                    accessory.getManufacturer(),accessory.getModel(),
                    accessory.getDescription(), accessory.getVersion(), accessory.getUri()));
                    accessory.getDescription(), accessory.getVersion(),
                    accessory.getUri(), accessory.getSerial()));
        } catch (RemoteException e) {
            Log.e(TAG, "RemoteException in hasPermission", e);
            return false;
@@ -174,7 +176,8 @@ public class UsbManager {
        try {
            mService.requestAccessoryPermission(new android.hardware.usb.UsbAccessory(
                    accessory.getManufacturer(),accessory.getModel(),
                    accessory.getDescription(), accessory.getVersion(), accessory.getUri()),
                    accessory.getDescription(), accessory.getVersion(),
                    accessory.getUri(), accessory.getSerial()),
                    mContext.getPackageName(), pi);
        } catch (RemoteException e) {
            Log.e(TAG, "RemoteException in requestPermission", e);
+1 −1
Original line number Diff line number Diff line
@@ -21,7 +21,7 @@ LOCAL_MODULE_TAGS := tests

LOCAL_SRC_FILES := $(call all-subdir-java-files)

LOCAL_PACKAGE_NAME := AccessoryChatGB
LOCAL_PACKAGE_NAME := AccessoryChat

LOCAL_JAVA_LIBRARIES := com.android.future.usb.accessory

+2 −2
Original line number Diff line number Diff line
@@ -17,10 +17,10 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.android.accessorychat">

    <application>
    <application android:label="Accessory Chat">
        <uses-library android:name="com.android.future.usb.accessory" />

        <activity android:name="AccessoryChat" android:label="Accessory Chat GB">
        <activity android:name="AccessoryChat" android:label="Accessory Chat">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.DEFAULT" />
Loading