Перейти к содержанию
Fire Monkey от А до Я
  • 0

Защита Пин-кодом, отпечатком пальца, рисунком...


Владимир1

Вопрос

Уважаемые форумчане!

Как программно получить информацию, что в телефоне (андроид>=6 версии) пользователь использует режим блокировки экрана по Биометрическим данным или по пин коду или рисунку. Т.Е. этот режим блокировки экрана в принципе включён в настройках телефона?

Заранее благодарен!

Ссылка на комментарий

Рекомендуемые сообщения

  • 0

Для получения информации о том, какой метод блокировки экрана используется на устройстве Android, можно воспользоваться классом KeyguardManager. Этот класс позволяет проверить, заблокирован ли экран на устройстве и какой именно метод блокировки экрана используется.

Пример использования KeyguardManager в Delphi:

uses
  Androidapi.JNI.GraphicsContentViewText, Androidapi.JNI.Os, Androidapi.JNI.Provider,
  Androidapi.JNI.Widget, Androidapi.Helpers, Androidapi.JNI.JavaTypes;

function IsDeviceLocked: Boolean;
var
  KeyguardManager: JKeyguardManager;
begin
  KeyguardManager := TJKeyguardManager.Wrap
    ((SharedActivityContext.getSystemService(TJContext.JavaClass.KEYGUARD_SERVICE) as ILocalObject).GetObjectID);
  Result := KeyguardManager.isKeyguardLocked();
end;

function GetKeyguardType: Integer;
var
  KeyguardManager: JKeyguardManager;
begin
  KeyguardManager := TJKeyguardManager.Wrap
    ((SharedActivityContext.getSystemService(TJContext.JavaClass.KEYGUARD_SERVICE) as ILocalObject).GetObjectID);
  if KeyguardManager.isKeyguardSecure() then
  begin
    if KeyguardManager.isDeviceSecure() then
      Result := 2 // Блокировка по биометрическим данным
    else
      Result := 1; // Блокировка по паролю, пин-коду или рисунку
  end
  else
    Result := 0; // Блокировка не настроена
end;

Функция IsDeviceLocked проверяет, заблокирован ли экран на устройстве в настоящее время. Если экран заблокирован, функция возвращает True, в противном случае возвращает False.

Функция GetKeyguardType позволяет получить тип блокировки экрана на устройстве. Если на устройстве настроена блокировка экрана по биометрическим данным, функция возвращает 2. Если на устройстве настроена блокировка экрана по паролю, пин-коду или рисунку, функция возвращает 1. Если блокировка экрана не настроена, функция возвращает 0.

Обратите внимание, что для использования KeyguardManager необходимо включить соответствующее разрешение в файле манифеста вашего приложения:

<uses-permission android:name="android.permission.USE_BIOMETRIC"/>

 

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...