IOS AutoFill Extension 使用

本文详细介绍了在iOS设备上使用ASCredentialListProviderViewController进行密码管理和身份验证的方法。包括如何准备凭证列表供用户选择,如何在没有用户交互的情况下提供凭据,以及如何准备界面进行身份验证和配置扩展。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ASCredentialListProviderViewController

extensionContext: 上下文,通过此context回调

- (void)prepareCredentialListForServiceIdentifiers:(NSArray<ASCredentialServiceIdentifier *> *)serviceIdentifiers;
展示Credentials List让用户选择,系统会触发该方法,并传入serviceIdentifiers数组,以便用户过滤或者对数据排序。如果serviceIdentifiers数组存在多个,那么越靠前的数据价值越大。当然数组也可能是空的。

- (void)provideCredentialWithoutUserInteractionForIdentity:(ASPasswordCredentialIdentity *)credentialIdentity;
如果用户可信则直接返回数据,否则可以触发ASExtensionErrorCodeUserInteractionRequest让用户进行身份验证。该方法触发时ViewController并没有展示,所以不要做任何的UI操作。

- (void)prepareInterfaceToProvideCredentialForIdentity:(ASPasswordCredentialIdentity *)credentialIdentity;
该方法是验证,比如提供一个解锁页面,当用户输入密码正确则调用[ASCredentialProviderExtensionContext completeRequestWithSelectedCredential:completionHandler:]对外提供数据;如果输入错误,则调用[ASCredentialProviderExtensionContext cancelRequestWithError:]错误类型选用ASExtensionErroCode中的ASExtensionErroDomain,如果Extension无法为外部提供数据则选用ASExtensionErrorCodeCredentialIdentityNotFound。

- (void)prepareInterfaceForExtensionConfiguration;
系统Setting打开Extension时触发。这时会展示ViewController。该方法触发需要配置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值