当前位置: 首页 > news >正文

【教程】MacOS绕过Apple Develop ID获取麦克风权限

转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn]

如果本文帮助到了你,欢迎[点赞、收藏、关注]哦~

以这个电脑音频频谱显示工具为例:https://github.com/1061700625/SpectraTray

使用Swift

不需要Apple Develop ID,推荐!

原理是通过swift来做一个启动器。

0、准备干净的环境。

python -m venv tray source tray/bin/activate pip install -i https://pypi.org/simple pystray pillow numpy SoundCard pyobjc

1、创建原生启动器 App。

mkdir -p SpectraTray.app/Contents/{MacOS,Resources} mkdir -p SpectraTray.app/Contents/Resources/pysrc cp app.py SpectraTray.app/Contents/Resources/pysrc/ cp -R tray SpectraTray.app/Contents/Resources/tray cp SpectraTray.ico SpectraTray.app/Contents/Resources/

2、写 Swift 启动器。

cat > main.swift <<'SWIFT' import Foundation import AVFoundation func runPython() { let bundleURL = Bundle.main.bundleURL let py = bundleURL.appendingPathComponent("Contents/Resources/tray/bin/python3").path let script = bundleURL.appendingPathComponent("Contents/Resources/pysrc/app.py").path let task = Process() task.executableURL = URL(fileURLWithPath: py) task.arguments = [script] // 完全后台(不弹终端) task.standardOutput = FileHandle.nullDevice task.standardError = FileHandle.nullDevice do { try task.run() } catch { } exit(0) } // 先触发一次麦克风权限(允许后 python 才能录到 BlackHole) AVCaptureDevice.requestAccess(for: .audio) { _ in runPython() } RunLoop.main.run() SWIFT swiftc main.swift -o SpectraTray.app/Contents/MacOS/SpectraTray

3、写 Info.plist。

cat > SpectraTray.app/Contents/Info.plist <<'PLIST' <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>CFBundleName</key><string>SpectraTray</string> <key>CFBundleDisplayName</key><string>SpectraTray</string> <key>CFBundleIdentifier</key><string>local.spectratray</string> <key>CFBundleExecutable</key><string>SpectraTray</string> <key>CFBundlePackageType</key><string>APPL</string> <key>CFBundleShortVersionString</key><string>0.0.2</string> <key>CFBundleVersion</key><string>1</string> <key>CFBundleIconFile</key><string>SpectraTray.ico</string> <key>LSBackgroundOnly</key><true/> <key>NSMicrophoneUsageDescription</key><string>用于捕获系统音频(如 BlackHole)并显示实时频谱</string> <key>LSApplicationCategoryType</key><string>public.app-category.utilities</string> </dict> </plist> PLIST

4、去掉 quarantine。

xattr -dr com.apple.quarantine SpectraTray.app

5、刷新图标。

touch SpectraTray.app

6、启动 SpectraTray.app

http://www.jsqmd.com/news/164500/

相关文章:

  • 5个步骤掌握RISC-V模拟器Spike的完整使用指南
  • Simplify与静态分析深度集成:解决复杂代码理解难题的技术实践
  • ECCV2022-RIFE动漫优化终极指南:如何让动画视频流畅度翻倍
  • Pyenv与Miniconda对比:哪种更适合管理Python AI环境?
  • 2025年氯化法金红石钛白供应商推荐排行榜,精选氯化法金红石钛白优质生产商推荐 - 工业品牌热点
  • Open Notebook:构建你的个人AI知识大脑的终极指南
  • Apache Iceberg隐藏分区解密:大数据查询性能提升10倍的终极方案
  • 如何快速配置Chuck:Android网络请求调试的完整指南
  • 2025年室内/人工/大型/小型飘雪机厂家推荐:河南晋安机械科技,全系飘雪设备专业供应 - 品牌推荐官
  • pyenv-virtualenv 终极使用指南
  • Lively Wallpaper终极指南:免费打造惊艳动态桌面的完整教程
  • ExcalidrawZ 终极指南:在 macOS 上体验专业级手绘绘图
  • Waymo数据集完整实践指南:从零开始快速掌握自动驾驶数据
  • OBD模块级硬件测试接口设计:实用操作指南
  • GitHub托管PyTorch项目时忽略.pycache/和__pycache__/目录
  • 2025年人工/场馆/小型/国产/诺泰克/室内造雪机厂家推荐榜:晋安机械科技全系产品解析 - 品牌推荐官
  • 计算机毕业设计Python+LLM大模型深度学习垃圾邮件分类与检测系统 大数据毕业设计(源码+LW文档+PPT+讲解)
  • 构建个性化AI编程伙伴:Roo Code自定义模式深度实践
  • 逻辑门组合逻辑设计:多层感知机实战案例详解
  • 用同或门设计故障诊断模块:从零实现方案
  • 如何快速掌握深空摄影:DeepSkyStacker终极图像叠加指南
  • Transformer模型训练提速秘诀:PyTorch + CUDA多卡并行实战
  • Pinokio AI浏览器:新手友好的开源项目一键启动器完全指南
  • AutoAgent零代码AI代理框架:5分钟快速上手指南
  • 利用lllyasviel/Annotators高效生成标注数据的完整指南
  • 桥式整流电路效率优化:基于整流二极管的完整示例
  • 有限状态自动机与正则语言
  • pyenv-virtualenv:Python虚拟环境管理的终极利器
  • Go 语言 2025 年度深度研究报告:架构演进、生态格局与未来展望
  • 还在手动画图?nodeppt Mermaid插件3步搞定专业图表