Przed 21 poziomem na pewno nie jest to możliwe na urządzeniu nierootowanym i nie ma alternatywy dla zwykłych uprawnień.
Jeśli jest ok, aby wymagać dodatkowych uprawnień administratora, to prawdopodobnie można naśladować poświadczeń potwierdzenie bardzo luźno, z dużo więcej wysiłku, poprzez wdrożenie DeviceAdminReceiver.onPasswordSucceeded
. Zablokuj ekran, gdy hasło powiedzie się, wykonaj wymagane działanie. Może się to okazać stosunkowo skomplikowane, ponieważ akcja nie zawsze jest odbierana (tylko, jeśli status się zmienił), trzeba zachować ostatni sukces, komunikować się z odbiorcą, itp.
Na marginesie, sprawdź dokładnie przypadek użycia i Twój projekt, w większości przypadków kiedy używany jest createConfirmDeviceCredentialIntent, w rzeczywistości nie jest wymagany, a inne opcje projektu mogą wyeliminować jego potrzebę.
Lepiej podać szczegóły tego, co dokładnie próbujesz chronić. Jeśli jest to scenariusz przypadkowego dostępu do urządzenia przez nieupoważnioną osobę i generowany jest stały token, powiedzmy, z jakiejś usługi OASH, rozsądne może być ponowne autoryzowanie przez ten sam przepływ logowania do usługi lub przechowywanie niektórych hmac oryginalnych danych uwierzytelniających wraz z tokenem monituje i ponownie sprawdza dane uwierzytelniające zamiast monitować o poświadczenia urządzenia. Alternatywnie, jeśli jest to wystarczające dla przypadku użycia, możesz użyć numeru google login, aby autoryzować dostęp do swojej aplikacji/tokena i zweryfikować, że użytkownik google jest taki sam dla zapisanego tokena.
Może zaistnieć potrzeba samodzielnego zaimplementowania. – tynn
Powodzenia z tym @ danny-zheng? – Beth