Repolode
sparrowcode

sparrowcode/PermissionsKit

面向 iOS 的 Swift 库,用统一 API 请求系统权限并读取权限状态。

Star
5,812
Fork
479
未关闭 Issue
4
最近提交
2个月前

这是什么?

PermissionsKit 为 iOS 应用提供统一的 API,用于请求相机、定位、通知、照片、通讯录等系统权限,并检查每项权限是否已授权、被拒绝或尚未确定。每种权限都以独立的 Swift Package 产品发布,应用只需链接实际用到的权限。

库还覆盖了配套的配置工作。它为每种权限提供对应的 Info.plist 用途说明键,并支持通过 xliff 导出或 InfoPlist.strings 文件进行多语言本地化。需要注意的是 FaceID 无法区分已授权与未确定,只有拒绝状态可靠。

核心功能

  • 01通过统一 API 请求权限并读取权限状态。
  • 02每种权限是独立的 Swift Package 产品,只链接所需部分。
  • 03覆盖蓝牙、日历、相机、定位、通知、照片、健康等多种权限。
  • 04为每种权限提供对应的 Info.plist 用途说明键。
  • 05支持通过 xliff 导出或 InfoPlist.strings 本地化用途说明。

适用场景

  • 在 iOS 应用中为不同类型的权限统一实现请求流程。
  • 在展示依赖相机或定位的功能前检查当前权限状态。
  • 只链接必要的权限模块,减少 App Review 中的疑问。

快速上手

  1. 1

    在 Xcode 中通过 File → Add Package Dependencies 添加仓库 URL 对应的包

  2. 2

    只选择应用实际使用的权限产品,然后在 Swift 中导入

使用前须知

  • 仅适用于 iOS。
  • FaceID 无法区分 .authorized 和 .notDetermined,因此只有 .denied 状态可靠。

收录于专题

标签

常见问题

PermissionsKit 是什么?
面向 iOS 的 Swift 库,用统一 API 请求系统权限并读取权限状态。 PermissionsKit 为 iOS 应用提供统一的 API,用于请求相机、定位、通知、照片、通讯录等系统权限,并检查每项权限是否已授权、被拒绝或尚未确定。每种权限都以独立的 Swift Package 产品发布,应用只需链接实际用到的权限。
PermissionsKit 可以免费使用吗?用的什么许可证?
PermissionsKit 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
PermissionsKit 还在维护吗?
半年内有更新。PermissionsKit 最近一次提交是在 2026年9月12日。
PermissionsKit 适合用来做什么?
在 iOS 应用中为不同类型的权限统一实现请求流程。 在展示依赖相机或定位的功能前检查当前权限状态。 只链接必要的权限模块,减少 App Review 中的疑问。
PermissionsKit 怎么安装和运行?
在 Xcode 中通过 File → Add Package Dependencies 添加仓库 URL 对应的包 只选择应用实际使用的权限产品,然后在 Swift 中导入
在哪里获取 PermissionsKit?
源代码和安装说明在 GitHub 上:https://github.com/sparrowcode/PermissionsKit

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目