测试测试过 | ✓ |
Lang语言 | Obj-CObjective C |
许可证 | MIT |
发布最后发布 | 2016年7月 |
由Dasmer Singh、Ayaka Nonaka、Eli Perkins、Dasmer Singh、Mark Adams维护。
VENTouchLock通过在应用启动时或从后台返回时要求进行Touch ID指纹扫描或输入密码来保护您的应用。它被用于官方Venmo应用。
开始使用最简单的方法是使用CocoaPods。只需将以下行添加到您的Podfile中:
pod 'VENTouchLock', '~> 1.0'
VENTouchLock需要自定义启动视图控制器来隐藏应用切换期间的客户端内容,并展示Touch ID提示或密码视图控制器。要创建这样的控制器,可从VENTouchLockSplashViewController
子类化并重写其init
函数以进行任何自定义。启动视图控制器通常是给用户提供注销选项的好地方,以防有其他用户试图登录。
将VENTouchLock的头文件添加到您的应用代理中。在任何实现文件中导入此头文件以使用框架。
#import <VENTouchLock/VENTouchLock.h>
将以下代码添加到您的应用代理的application:didFinishLaunchingWithOptions:
方法中以初始化VENTouchLock。
[[VENTouchLock sharedInstance] setKeychainService:@"KEYCHAIN_SERVICE_NAME"
keychainAccount:@"KEYCHAIN_ACCOUNT_NAME"
touchIDReason:@"TOUCHID_REASON"
passcodeAttemptLimit:ATTEMPT_LIMIT
splashViewControllerClass:[CUSTOM_SPLASH_VIEW_CONTROLLER class]];
KEYCHAIN_SERVICE_NAME
:用于从Apple的钥匙串服务接口设置和返回密码的服务名。例如:Venmo
KEYCHAIN_ACCOUNT_NAME
:用于从Apple的钥匙串服务接口设置和返回密码的账户名。例如:[email protected]
TOUCHID_REASON
:在Touch ID提示上显示的消息。例如:扫描您的指纹以解锁
ATTEMPT_LIMIT
:在启动视图控制器因身份验证失败而失败之前的最大密码尝试次数(当用户达到此限制时,您的应用应执行注销)CUSTOM_SPLASH_VIEW_CONTROLLER
:VENTouchLockSplashViewController
子类的名称。为了使您的用户能够启用Touch ID和/或密码,他们必须设置一个密码。在Venmo应用中,此选项位于设置页。要允许您的用户创建密码,使用VENTouchLockCreatePasscodeViewController
。
如果用户的设备支持Touch ID(即 [VENTouchLock canUseTouchID]
返回 YES
),在设置密码提示后,允许用户设置一个选项以使用Touch ID解锁。使用VENTouchLock类方法setShouldUseTouchID:(BOOL)preference
设置他们的偏好。
查看本仓库中的示例项目,了解如何使用。
我们很高兴看到您对这个库进行改进的想法!最好的贡献方式是通过提交拉取请求。我们将尽最大努力尽快回应您的补丁。如果您发现bug或有疑问,也可以提交新的GitHub问题。
请确保遵循我们的通用编码风格,并为新功能添加测试覆盖!