全部模块总览
按分类查看全部 30+ 内置 Python 模块。
主入口:iOS 原生能力(入口模型、Python 模块表、AppUI 原生组件入口、专题页与文档导航)。本文是补充索引,按导入名浏览全部模块。
按分类浏览 PythonIDE 内置 Python 模块,快速找到对应能力文档。
边界:这是 模块索引页,不是 import 名。选定模块后打开具体文档;页面型 MiniApp 优先 appui,小组件用 widget。
#模块概览
#快速开始
保存设置、读设备、查通知权限:
已复制
import device
import notification
import storage
storage.set("theme", "system")
print("device", device.model(), device.system_version())
print("theme", storage.get("theme", "system"))
if notification.authorization_status() != "authorized":
notification.request_permission()
#AppUI 示例
用索引思路组合三个常用模块:设置、设备、通知。
已复制
import appui
import device
import notification
import storage
state = appui.State(
theme=storage.get("theme", "system"),
model="—",
notify_auth="—",
message="点击按钮开始",
)
def refresh_all():
state.model = device.model()
state.notify_auth = str(notification.authorization_status())
state.message = "已刷新"
def save_theme():
storage.set("theme", state.theme)
state.message = f"已保存主题: {state.theme}"
def request_notify():
result = notification.request_permission()
state.notify_auth = str(notification.authorization_status())
state.message = "已授权" if result.get("granted") else "未授权"
def body():
return appui.NavigationStack(
appui.Form([
appui.Section("设置", [
appui.Picker(
"主题",
selection=state.theme,
options=["system", "light", "dark"],
).picker_style("segmented"),
appui.Button("保存主题", action=save_theme)
.button_style("bordered_prominent"),
]),
appui.Section("设备与通知", [
appui.Button("刷新状态", action=refresh_all),
appui.Button("申请通知权限", action=request_notify),
appui.LabeledContent("型号", value=state.model),
appui.LabeledContent("通知授权", value=state.notify_auth),
appui.Text(state.message).foreground_color("secondaryLabel"),
]),
]).navigation_title("模块总览")
)
appui.run(body, state=state)
#API 参考
#先选运行时
| 目标 | 首选 |
|---|---|
| 工具页、设置页、列表页、媒体控制 | appui |
| 主屏/锁屏/StandBy 小组件 | widget |
| Pythonista 风格命令式 UI | ui |
| 2D 游戏、物理、逐帧绘制 | scene |
| 系统能力(照片、定位等) | 对应原生模块 + AppUI 按钮 |
| 纯脚本、日志输出 | Python + console |
#UI 与渲染
| 模块 | 导入名 | 用途 |
|---|---|---|
| appui | import appui | 声明式原生界面与 MiniApp |
| aurora_system | import aurora_system | 相机、传感器等实时事件 |
| aurora_toolkit | import aurora_toolkit | 高频更新与批量刷新工具 |
| ui | import ui | Pythonista 风格 UI |
| scene | import scene | 2D 场景、scene.run、节点、Action、物理与 Classic 绘图 |
| turtle | import turtle | 原生 turtle 绘图 |
#设备与传感器
| 模块 | 导入名 | 用途 |
|---|---|---|
| device | import device | 设备、屏幕、电池 |
| location | import location | 定位、指南针、地理编码 |
| motion | import motion | 加速度计、陀螺仪、气压计 |
| haptics | import haptics | 触觉反馈 |
| biometric | import biometric | Face ID / Touch ID |
| health | import health | HealthKit 数据 |
#系统服务
| 模块 | 导入名 | 用途 |
|---|---|---|
| permission | import permission | 统一权限查询与申请 |
| storage | import storage | UserDefaults 键值 |
| database | import database | SQLite 与 JSON collection |
| keychain | import keychain | 钥匙串 |
| clipboard | import clipboard | 剪贴板 |
| console | import console | 弹窗、HUD |
| dialogs | import dialogs | 表单与选择器对话框 |
| notification | import notification | 本地通知 |
| calendar_events | import calendar_events | 日历与提醒 |
| contacts | import contacts | 联系人 |
| live_activity | import live_activity | Live Activity |
| nfc | import nfc | NFC 读写 |
| alarm | import alarm | 系统闹钟 |
import mail | 邮件撰写 | |
| message | import message | 短信 / iMessage |
| translation | import translation | 设备端翻译 |
| foundation_models | import foundation_models | 端侧文本生成 |
| assistant | import assistant | 端侧助手与工具 |
| storekit | import storekit | 内购与订阅 |
| font_picker | import font_picker | 字体选择器 |
#媒体与视觉
| 模块 | 导入名 | 用途 |
|---|---|---|
| photos | import photos | 相册、拍照、保存 |
| camera | 见 photos | 拍照(photos.capture_image) |
| file_picker | 见 appui | 文件选择(FileImporter) |
| share | 见 appui | 分享(ShareLink) |
| avplayer | import avplayer | 音视频播放 |
| music_player | import music_player | 队列式音乐播放器 |
| sound | import sound | 音效与本地播放器 |
| now_playing | import now_playing | 锁屏正在播放元数据 |
| audio_recorder | import audio_recorder | 录音 |
| video_recorder | import video_recorder | 录像 |
| audio_session | import audio_session | 音频会话 |
| speech | import speech | 文字转语音 |
| speech_recognition | import speech_recognition | 语音识别 |
| shazam | import shazam | 听歌识曲 |
| music | import music | Apple Music 控制 |
| media_composer | import media_composer | 音视频合成 |
import pdf | PDF 创建与预览 | |
| qrcode | import qrcode | 二维码生成 |
| vision | import vision | OCR |
| vision_helper | import vision_helper | 人脸、条码、分类 |
| coreml | import coreml | Core ML 推理 |
#网络与数据
| 模块 | 导入名 | 用途 |
|---|---|---|
| network | import network | HTTP、下载 |
| websocket | import websocket | WebSocket 客户端 |
| bluetooth | import bluetooth | BLE 中心模式 |
| ble_peripheral | import ble_peripheral | BLE 外设模式 |
| background | import background | 后台任务 |
| background_download | import background_download | 后台下载 |
| http_server | import http_server | 本地 HTTP 服务 |
| ssh | import ssh | SSH / SFTP |
| weather | import weather | 天气 |
| c_extensions | 不是 import 名 | 内置 C 扩展清单 |
#自动化与扩展
| 模块 | 导入名 | 用途 |
|---|---|---|
| widget | import widget | WidgetKit 小组件 |
| shortcuts | import shortcuts | 快捷指令 |
| objc_util | import objc_util | ObjC Runtime |
| keyboard | import keyboard | 编辑器键盘工具栏 |
#常见错误
| 错误写法 | 后果 | 修正 |
|---|---|---|
| 不选运行时直接用原生模块堆 UI | 难维护 | 页面用 appui |
import c_extensions | 模块不存在 | 用真实包名 |
| 索引页当 API 文档 | 签名错误 | 点进具体模块页 |
| 权限未说明用途就申请 | 被拒率高 | 先展示说明再按钮申请 |
敏感数据用 storage | 不安全 | 用 keychain |
#相关文档
| 文档 | 用途 |
|---|---|
| iOS 原生能力 | 入口模型、模块表与权限矩阵 |
| 原生能力入口 | MiniApp 配方 |
| permission | 权限 |
| appui | 声明式 UI |
#发布前检查
- 已选对运行时(AppUI / widget / scene / ui)
- 模块 API 名与文档一致
- 权限与失败路径已在示例或正文中说明
#预期效果
运行示例后,界面应出现文档描述的目标结果;若与预期不符,请按「失败路径」排查。