English 简体中文 繁體中文 한국 사람 日本語 Deutsch русский بالعربية TÜRKÇE português คนไทย french

简体中文 繁體中文 English 日本語 Deutsch 한국 사람 بالعربية TÜRKÇE คนไทย Français русский

回答

收藏

Telegram 小程序 | TypeScript @telegram-apps/sdk @1.x | 组件 | 生物测量管理器

开源社区 开源社区 10338 人阅读 | 0 人回复 | 2025-02-22

本帖最后由 riyad 于 2025-2-22 20:47 编辑 5 S5 M2 G0 x3 [

$ J  L5 g( `7 ^  J初始化

要初始化组件,请使用initBiometryManager函数:

  1. import { initBiometryManager } from '@telegram-apps/sdk';. V' u9 b9 A* f8 d; U% {

  2. / c5 j$ |. |4 A/ x& k: E+ f" o
  3. const [biometryManager] = initBiometryManager();
复制代码

INFO

由于 BiometryManager 无法同步实例化,因此该函数返回一个承诺,在获取生物测量管理器数据时 。

认证

要验证用户身份,请使用 authenticate 方法:

  1. bm( _( K! O* W6 Z( i* W! T
  2.   .authenticate({ reason: 'Authorize to unlock the storage' })% V7 `1 D# r& a8 R9 c+ L% Y  K
  3.   .then(token => {
    8 W  @1 v- h4 |1 @# x0 w
  4.     console.log('Token received', token);7 `9 G( \1 g" s8 C1 [% ^3 a
  5.   });
复制代码

此方法接受一个可选的 reason: string 属性,长度不超过 128 个符号。

: w4 ?9 @! Q" {/ O/ Y2 k* z7 o
打开设置

要打开包含生物测量设置的模态窗口,请使用 openSettings 方法:

  1. bm.openSettings();
复制代码

在该模式下,用户可以打开或关闭生物测量功能。


4 Y3 \5 w9 x& N( i5 u- T申请访问

要申请使用生物测量的权限,请使用 requestAccess 方法:

  1. bm* q# i" u) i0 z: t/ m) z
  2.   .requestAccess({ reason: 'Authorize to start using biometry' })
    $ @9 H' C6 X9 n; g# y+ ~3 O. c
  3.   .then(accessGranted => {. X4 C, w, v  B. W6 C
  4.     console.log('Access granted', accessGranted);" ^+ E. L: r$ V" B3 [+ C/ B- d  a
  5.   });
复制代码
除了 authenticate 方法外,它还接受一个可选的 reason: string 属性,长度为 ,最多 128 个符号。
+ O2 b6 }% P0 H) Y更新生物测量令牌 - Biometry Token

要更新存储在安全存储器中的令牌,请使用 updateToken 方法:


1 H" J0 }4 U3 q7 O1 O  z
  1. bm
    7 z- p$ U! R* \5 {. Y! V
  2.   .updateToken({ token: 'My token' })
    ' a/ F" p3 A; J7 \  C
  3.   .then(status => {
    7 s0 S7 H  U6 |0 e$ [: [! Q$ `
  4.     console.log('Token updated', status);1 Q% {. E* l1 k3 o7 G
  5.   });
复制代码

此方法返回一个包含执行状态的 promise。

$ _" q1 Z. ^6 P) i/ o. W
事件

可被跟踪 的事件列表:

" j4 E5 p6 J  K4 A5 V
事件
监听函数
触发条件
change:accessGranted(value: boolean) => void已更改 accessGranted 属性
change:accessRequested(value: boolean) => void更改了 accessRequested 属性
change:available(value: boolean) => void更改了 available 属性
change:deviceId(value: string) => void已更改 deviceId 属性
change:tokenSaved(value: boolean) => void更改了 tokenSaved 属性
change:token(value: string) => void更改了 token 属性
change:biometryType(value: BiometryType) => void更改了 biometryType 属性
方法支持

方法列表,可用于 支持检查:auth、openSettings、requestAccess 和 updateToken。

9 L6 M0 h. {' Z
! g) G& r% i6 Q' |- `
! ]/ \7 N# G6 u% J$ f; z0 c

7 B8 ^3 o7 z9 j( }4 F+ G
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则