Ich versuche Fingerabdruck-API mit einer Demo zu bauen, wie folgt aus:Fingerabdrucks nicht in Service arbeiten
if (fingerprintManager.hasEnrolledFingerprints()) {
// start fingerprint auth here.
try {
// CryptoObjectHelper cryptoObjectHelper = new CryptoObjectHelper();
if (cancellationSignal == null) {
cancellationSignal = new CancellationSignal();
}
if (cancellationSignal.isCanceled()) {
cancellationSignal = new CancellationSignal();
}
myAuthCallback = new MyAuthCallback(context, handler);
fingerprintManager.authenticate(null, cancellationSignal, 0, myAuthCallback, null);
} catch (Exception e) {
}
}
und es funktioniert in einer Aktivität Komponente, kann ich meine Fingerabdrücke unterscheiden. Aber wenn ich versuche, diese Codes mit einem Service oder einer BroadcastReciver-Komponente zu verwenden, kann ich keinen Rückruf erhalten, ist es richtig, dass die FingerPrint-API nur in der Aktivitätskomponente verwendet werden kann?
Sie müssen dem Benutzer eine Benutzeroberfläche zeigen, um ihm mitzuteilen, dass er seinen Finger setzen soll, und Sie können die Aktivität von Ihrem Dienst aus starten – LaurentY
Ich benutze eine vom Service erstellte schwebende Ansicht, um dem Benutzer mitzuteilen, dass er seinen Finger steckt. Die Frage ist >> fingerprintManager .authenticate (null, cancellationSignal, 0, myAuthCallback, null); >> Ich bekomme nichts über das Ergebnis, wenn ich diese Codes im Dienst verwende, aber es funktioniert in Activity, ich möchte es herausfinden. –