Merge "Clean up fingerprint enrollment API" into nyc-dev
This commit is contained in:
@@ -51,7 +51,8 @@ public abstract class EnrollClient extends ClientMonitor {
|
|||||||
" getGroupId():" + getGroupId());
|
" getGroupId():" + getGroupId());
|
||||||
}
|
}
|
||||||
if (remaining == 0) {
|
if (remaining == 0) {
|
||||||
FingerprintUtils.getInstance().addFingerprintForUser(getContext(), fingerId, groupId);
|
FingerprintUtils.getInstance().addFingerprintForUser(getContext(), fingerId,
|
||||||
|
getTargetUserId());
|
||||||
}
|
}
|
||||||
return sendEnrollResult(fingerId, groupId, remaining);
|
return sendEnrollResult(fingerId, groupId, remaining);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -540,13 +540,15 @@ public class FingerprintService extends SystemService implements IBinder.DeathRe
|
|||||||
startClient(client, true /* initiatedByClient */);
|
startClient(client, true /* initiatedByClient */);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void startEnrollment(IBinder token, byte [] cryptoToken, int callingUserId, int groupId,
|
private void startEnrollment(IBinder token, byte [] cryptoToken, int userId,
|
||||||
IFingerprintServiceReceiver receiver, int flags, boolean restricted,
|
IFingerprintServiceReceiver receiver, int flags, boolean restricted,
|
||||||
String opPackageName) {
|
String opPackageName) {
|
||||||
updateActiveGroup(groupId, opPackageName);
|
updateActiveGroup(userId, opPackageName);
|
||||||
|
|
||||||
|
final int groupId = userId; // default group for fingerprint enrollment
|
||||||
|
|
||||||
EnrollClient client = new EnrollClient(getContext(), mHalDeviceId, token, receiver,
|
EnrollClient client = new EnrollClient(getContext(), mHalDeviceId, token, receiver,
|
||||||
callingUserId, groupId, cryptoToken, restricted, opPackageName) {
|
userId, groupId, cryptoToken, restricted, opPackageName) {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public IFingerprintDaemon getFingerprintDaemon() {
|
public IFingerprintDaemon getFingerprintDaemon() {
|
||||||
@@ -680,15 +682,14 @@ public class FingerprintService extends SystemService implements IBinder.DeathRe
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override // Binder call
|
@Override // Binder call
|
||||||
public void enroll(final IBinder token, final byte[] cryptoToken, final int groupId,
|
public void enroll(final IBinder token, final byte[] cryptoToken, final int userId,
|
||||||
final IFingerprintServiceReceiver receiver, final int flags,
|
final IFingerprintServiceReceiver receiver, final int flags,
|
||||||
final String opPackageName) {
|
final String opPackageName) {
|
||||||
checkPermission(MANAGE_FINGERPRINT);
|
checkPermission(MANAGE_FINGERPRINT);
|
||||||
final int limit = mContext.getResources().getInteger(
|
final int limit = mContext.getResources().getInteger(
|
||||||
com.android.internal.R.integer.config_fingerprintMaxTemplatesPerUser);
|
com.android.internal.R.integer.config_fingerprintMaxTemplatesPerUser);
|
||||||
final int callingUserId = UserHandle.getCallingUserId();
|
|
||||||
final int enrolled = FingerprintService.this.
|
final int enrolled = FingerprintService.this.getEnrolledFingerprints(userId).size();
|
||||||
getEnrolledFingerprints(callingUserId).size();
|
|
||||||
if (enrolled >= limit) {
|
if (enrolled >= limit) {
|
||||||
Slog.w(TAG, "Too many fingerprints registered");
|
Slog.w(TAG, "Too many fingerprints registered");
|
||||||
return;
|
return;
|
||||||
@@ -696,7 +697,7 @@ public class FingerprintService extends SystemService implements IBinder.DeathRe
|
|||||||
|
|
||||||
// Group ID is arbitrarily set to parent profile user ID. It just represents
|
// Group ID is arbitrarily set to parent profile user ID. It just represents
|
||||||
// the default fingerprints for the user.
|
// the default fingerprints for the user.
|
||||||
if (!isCurrentUserOrProfile(groupId)) {
|
if (!isCurrentUserOrProfile(userId)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -704,7 +705,7 @@ public class FingerprintService extends SystemService implements IBinder.DeathRe
|
|||||||
mHandler.post(new Runnable() {
|
mHandler.post(new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
startEnrollment(token, cryptoToken, callingUserId, groupId, receiver, flags,
|
startEnrollment(token, cryptoToken, userId, receiver, flags,
|
||||||
restricted, opPackageName);
|
restricted, opPackageName);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user