SmileToUnlock完全使用指南:6个自定义属性让App启动页更有趣 SmileToUnlock完全使用指南6个自定义属性让App启动页更有趣【免费下载链接】SmileToUnlockThis library uses ARKit Face Tracking in order to catch users smile.项目地址: https://gitcode.com/gh_mirrors/smi/SmileToUnlockSmileToUnlock 是一个基于 ARKit 面部追踪的 iOS 微笑解锁库用户打开 App 后对着前置摄像头微笑才能解锁进入主页面。本文带你快速上手这套面部微笑解锁方案并详解 6 个自定义属性几分钟就能为你的 App 启动页加入有趣的微笑门禁体验。它是什么让 App 启动页因笑而开传统 App 打开即用而 SmileToUnlock 把启动页变成了一场小小的互动游戏 实时捕捉用户面部表情ARKit Face Tracking 屏幕上的简笔画笑脸会实时跟随用户的嘴角变化✅ 微笑幅度达标后播放提示音、弹出打勾动画自动跳转主界面 提供跳过按钮保证用户随时能进入 App核心判断逻辑只需一个静态属性实现在 SmileToUnlock/SmileToUnlock.swift 第 38-40 行if SmileToUnlock.isSupported { // 设备支持面部追踪可以启用微笑解锁 }⚠️ 注意面部追踪仅在真机iPhone X 及以上机型上可用模拟器无法演示。三步快速上手给启动页加一个微笑门禁以示例工程 SmileToUnlockExample/SmileToUnlockExample/AppDelegate.swift 为参考一共只需三步。第 1 步配置相机权限由于库要调用前置摄像头必须在Info.plist中加入NSCameraUsageDescription并写一句用途说明参考示例 SmileToUnlockExample/SmileToUnlockExample/Info.plistkeyNSCameraUsageDescription/key string需要通过摄像头识别你的微笑来解锁 App/string第 2 步检查设备是否支持在启动入口处用SmileToUnlock.isSupported判断不支持的设备直接走正常启动流程即可避免崩溃。第 3 步一行代码显示微笑页let vc SmileToUnlock() vc.onSuccess { // 用户微笑成功或点击跳过后切换到主界面 } window?.rootViewController vc把这段代码放进AppDelegate的didFinishLaunchingWithOptions微笑页就会在 App 启动时最先出现。6 个自定义属性让启动页变成你的风格所有自定义属性集中在 SmileToUnlock/SmileToUnlock.swift一览如下属性默认值作用titleTextHello,页面大标题subtitleTextBegin using our app from the smile标题下方的引导语skipButtonTextSkip this底部跳过按钮文字successTreshold0.7微笑阈值0~1达标才解锁successSoundPlaying系统提示音 1075解锁成功音效置为nil可静音backgroundColor.blue页面背景色配置起来非常直接let vc SmileToUnlock() vc.titleText 嗨 vc.subtitleText 从一个微笑开始使用我们的 App vc.skipButtonText 跳过 vc.successTreshold 0.8 // 0.8 已经算很难笑了 vc.backgroundColor .purple vc.successSoundPlaying nil // 不想响铃置空即可背景色3 种预设 任意自定义backgroundColor接受枚举SmileToUnlockBackgroundSmileToUnlock/SmileToUnlock.swift内置blue、red、purple三种主题色也能用.other(任意UIColor)配上品牌色与你的 App 视觉风格完全统一。微笑阈值多用力才算解锁成功successTreshold控制解锁难度取值 0~10.5左右微微一笑即可适合追求轻松体验默认0.7需要明显的上扬嘴角0.8库作者在注释里调侃已经挺难了适合搞怪场景工作原理系统如何看懂你的微笑无需担心复杂细节库内部流程一目了然在页面上创建一个隐藏的ARSCNView开启ARFaceTrackingConfiguration面部追踪SmileToUnlock/SmileToUnlock.swift每帧读取面部的mouthSmileLeft/mouthSmileRight混合形状参数取两者均值与阈值比较SmileToUnlock/SmileToUnlock.swift把 0~1 的微笑程度传给SmileView实时绘制嘴角弧度SmileToUnlock/SmileView.swift微笑达标后播放音效、淡入打勾动画SmileToUnlock/CheckmarkView.swift再触发onSuccess回调也就是说用户脸上真实的笑容会逐帧映射到屏幕里的简笔画脸上——这正是演示动图里最打动人的效果。三种安装方式总有一种适合你CocoaPods推荐在Podfile写入pod SmileToUnlock后执行pod install即可Swift Package Manager添加包依赖后将SmileToUnlock加入 Target 的依赖列表包配置见 Package.swift️手动集成克隆仓库git clone https://gitcode.com/gh_mirrors/smi/SmileToUnlock把SmileToUnlock目录下的源码文件拖入你的工程即可版本信息可参考 SmileToUnlock.podspec最低支持 iOS 11。常见问题问模拟器里看不到效果面部追踪只支持 iPhone X 及以上真机请连接实体设备运行。问用户不想微笑怎么办底部有跳过按钮文字可通过skipButtonText修改点击后同样会触发onSuccess不影响用户进入 App。问会存储用户的人脸数据吗不会。库只在内存中实时读取表情参数不保存任何图像或生物特征信息。从权限配置到六大属性SmileToUnlock 用极小的代码量换来了启动页的一次小惊喜。不妨把微笑阈值调高一点、换上品牌背景色——下一次用户打开你的 App 时或许会真的会心一笑 【免费下载链接】SmileToUnlockThis library uses ARKit Face Tracking in order to catch users smile.项目地址: https://gitcode.com/gh_mirrors/smi/SmileToUnlock创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

最新新闻

一图看懂数据库结构:PostgreSQL Playground ERD 关系图生成与 SVG 导出完整教程

一图看懂数据库结构:PostgreSQL Playground ERD 关系图生成与 SVG 导出完整教程

一图看懂数据库结构:PostgreSQL Playground ERD 关系图生成与 SVG 导出完整教程 【免费下载链接】pg In Browser PostgreSQL Playground, no server, just client and pglite (postgresql wasm) 项目地址: https://gitcode.com/gh_mirrors/pg2/pg 在 Postgre…

2026/8/24 10:17:50
reactive-mvvm-android 完全解析:Kotlin 协程+DataBinding 打造响应式 MVVM 的实战指南

reactive-mvvm-android 完全解析:Kotlin 协程+DataBinding 打造响应式 MVVM 的实战指南

reactive-mvvm-android 完全解析:Kotlin 协程DataBinding 打造响应式 MVVM 的实战指南 【免费下载链接】reactive-mvvm-android My way to MVVM using KotlinX Coroutines and Android data-binding 项目地址: https://gitcode.com/gh_mirrors/re/reactive-mvvm-a…

2026/8/24 10:17:50
BrowserPilot提示词编写指南:7个技巧让GPT精准听懂你的浏览器自动化指令

BrowserPilot提示词编写指南:7个技巧让GPT精准听懂你的浏览器自动化指令

BrowserPilot提示词编写指南:7个技巧让GPT精准听懂你的浏览器自动化指令 【免费下载链接】browserpilot Natural language browser automation 项目地址: https://gitcode.com/gh_mirrors/br/browserpilot BrowserPilot 是一个用自然语言驱动的智能浏览器自动…

2026/8/24 10:17:50
帕累托最优智能体:多目标权衡下的工具选择与策略优化

帕累托最优智能体:多目标权衡下的工具选择与策略优化

1. 项目概述:当智能体学会“挑工具”,效率革命就开始了最近在折腾大语言模型(LLM)驱动的智能体(Agent)时,我总被一个问题困扰:手头工具(Tools)越来越多&#…

2026/8/24 10:17:50
Android系统镜像与分区深度解析:从boot.img到super.img的刷机与定制指南

Android系统镜像与分区深度解析:从boot.img到super.img的刷机与定制指南

1. 从一块“砖头”到智能设备:理解Android系统镜像与分区的必要性如果你刚接触Android系统开发或刷机,可能会被一堆以.img结尾的文件和诸如boot、system、vendor这样的分区名搞得晕头转向。为什么不能像Windows那样,一个ISO镜像文件搞定所有&…

2026/8/24 10:17:50
2-Step Agent框架:构建人机协同决策系统的设计范式与实践指南

2-Step Agent框架:构建人机协同决策系统的设计范式与实践指南

1. 从“AI说了算”到“人机协同决策”:为什么我们需要2-Step Agent框架?最近和几个做产品、做风控的朋友聊天,大家不约而同地提到了一个共同的困惑:AI模型给出的建议越来越准,但团队里敢直接“照单全收”的人却越来越少…

2026/8/24 10:12:50