Fingerprint.java
/*
* Copyright (C) 2015 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.hardware.fingerprint;
import android.os.Parcel;
import android.os.Parcelable;
/**
* Container for fingerprint metadata.
* @hide
*/
public final class Fingerprint implements Parcelable {
private CharSequence mName;
private int mGroupId;
private int mFingerId;
private long mDeviceId; // physical device this is associated with
public Fingerprint(CharSequence name, int groupId, int fingerId, long deviceId) {
mName = name;
mGroupId = groupId;
mFingerId = fingerId;
mDeviceId = deviceId;
}
private Fingerprint(Parcel in) {
mName = in.readString();
mGroupId = in.readInt();
mFingerId = in.readInt();
mDeviceId = in.readLong();
}
/**
* Gets the human-readable name for the given fingerprint.
* @return name given to finger
*/
public CharSequence getName() { return mName; }
/**
* Gets the device-specific finger id. Used by Settings to map a name to a specific
* fingerprint template.
* @return device-specific id for this finger
* @hide
*/
public int getFingerId() { return mFingerId; }
/**
* Gets the group id specified when the fingerprint was enrolled.
* @return group id for the set of fingerprints this one belongs to.
* @hide
*/
public int getGroupId() { return mGroupId; }
/**
* Device this fingerprint belongs to.
* @hide
*/
public long getDeviceId() { return mDeviceId; }
public int describeContents() {
return 0;
}
public void writeToParcel(Parcel out, int flags) {
out.writeString(mName.toString());
out.writeInt(mGroupId);
out.writeInt(mFingerId);
out.writeLong(mDeviceId);
}
public static final Parcelable.Creator CREATOR
= new Parcelable.Creator() {
public Fingerprint createFromParcel(Parcel in) {
return new Fingerprint(in);
}
public Fingerprint[] newArray(int size) {
return new Fingerprint[size];
}
};
};
-------------------------------------------------------------------------------------------------------------------------
public interface Parcelable
android.os.Parcelable |
Interface for classes whose instances can be written to and restored from a Parcel.
Classes implementing the Parcelable interface must also have a non-null static field
called CREATOR of a type that implements the Parcelable.Creator interface.
A typical implementation of Parcelable is:
public class MyParcelable implements Parcelable { private int mData; public int describeContents() { return 0; } public void writeToParcel(Parcel out, int flags) { out.writeInt(mData); } public static final Parcelable.Creator<MyParcelable> CREATOR = new Parcelable.Creator<MyParcelable>() { public MyParcelable createFromParcel(Parcel in) { return new MyParcelable(in); } public MyParcelable[] newArray(int size) { return new MyParcelable[size]; } }; private MyParcelable(Parcel in) { mData = in.readInt(); } }
Nested classes |
|
---|---|
|
Parcelable.ClassLoaderCreator Specialization of Parcelable.Creator that allows you to receive the ClassLoader the object is being created in. |
Parcelable.Creator Interface that must be implemented and provided as a public CREATOR field that generates instances of your Parcelable class from a Parcel. |
Constants |
|
---|---|
CONTENTS_FILE_DESCRIPTOR Descriptor bit used with describeContents(): indicates that the Parcelable object's flattened representation includes a file descriptor. |
|
PARCELABLE_WRITE_RETURN_VALUE Flag for use with writeToParcel(Parcel, int): the object being written is a return value, that is the result of a function such as "Parcelable someFunction()", "void someFunction(out Parcelable)", or "void someFunction(inout Parcelable)". |
Public methods |
|
---|---|
describeContents() Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. |
|
writeToParcel(Parcel dest, int flags) Flatten this object in to a Parcel. |
int CONTENTS_FILE_DESCRIPTOR
Descriptor bit used with describeContents(): indicates that the Parcelable object's
flattened representation includes a file descriptor.
See also:
Constant Value: 1 (0x00000001)
int PARCELABLE_WRITE_RETURN_VALUE
Flag for use with writeToParcel(Parcel, int): the object being written is a return value,
that is the result of a function such as "Parcelable someFunction()",
"void someFunction(out Parcelable)", or "void someFunction(inout Parcelable)".
Some implementations may want to release resources at this point.
Constant Value: 1 (0x00000001)
int describeContents ()
Describe the kinds of special objects contained in this Parcelable instance's marshaled representation.
For example, if the object will include a file descriptor in the output of writeToParcel(Parcel, int),
the return value of this method must include the CONTENTS_FILE_DESCRIPTOR bit.
Returns | |
---|---|
a bitmask indicating the set of special object types marshaled by this Parcelable object instance. |
See also:
void writeToParcel (Parcel dest, int flags)
Flatten this object in to a Parcel.
Parameters | |
---|---|
Parcel: The Parcel in which the object should be written. | |
int: Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE. |