打开plist中的MetalCaptureEnabled开关并重签名IPA

具体命令如下:

bash 复制代码
cd ${WORKSPACE}
rm -rf ./Payload
unzip ${IPA_NAME}  # 从这个IPA解压出来,解压为./Payload 

# enable metal capture # 使用plutil
plutil -insert MetalCaptureEnabled -bool "True" ./Payload/${ProjectName}Client.app/Info.plist

# 在macOS系统中,`plutil` 是一个用于处理属性列表(plist)文件的命令行工具。该命令的具体含义如下:
# - `plutil`:这是命令本身,用于操作属性列表文件。
# - `-insert`:这个选项告诉 `plutil` 在属性列表文件中插入一个新的键值对。
# - `MetalCaptureEnabled`:这是要插入的键(key)的名称。
# - `-bool "True"`:这个选项指定了要插入的值(value)是一个布尔值,并且这个布尔值是 "True"。
# 这个命令执行后,`Info.plist` 文件将包含一个新的配置项,它可能会影响应用的行为,尤其是与 Metal 图形框架相关的功能。例如,这个键可能用于启用 Metal 框架的捕获功能,以便进行调试或分析。

security unlock-keychain -p 我的开机密码 login.keychain
# 解锁钥匙串,解锁了才能使用

codesign -f -s ${CERTFICATE_NAME} ./Payload/${ProjectName}Client.app
# 对这个APP进行强制签名,使用的签名证书是 ${CERTFICATE_NAME} 

zip -r ./"$ARCHIVE_NAME"".zip" ./Payload
# 压缩起来,重命名并移除掉Payload文件夹

mv "$ARCHIVE_NAME"".zip" "$ARCHIVE_NAME"".ipa"

rm -rf ./Payload
相关推荐
追光天使17 小时前
Mac M1 源码安装FFmpeg,开启enable-gpl 和 lib x264
macos·ffmpeg
会飞的爱迪生18 小时前
mac和linux传输文件
linux·运维·macos
我命由我123451 天前
游戏引擎 Unity - Unity 启动(下载 Unity Editor、生成 Unity Personal Edition 许可证)
c语言·c++·后端·unity·c#·游戏引擎·ue4
数据的世界012 天前
解决.NET程序通过网盘传到Linux和macOS不能运行的问题
linux·运维·服务器·macos
wn5312 天前
【浏览器 - Mac实时调试iOS手机浏览器页面】
前端·macos·ios·智能手机·浏览器
shichen5012 天前
MacOS 如何映射快捷键
macos·mac·策略模式
一丝晨光3 天前
Cocoa和Cocoa Touch是什么语言写成的?什么是Cocoa?编程语言中什么是框架?为什么苹果公司Cocoa类库有不少NS前缀?Swift编程语言?
macos·ios·objective-c·cocoa·swift·uikit·cocoa touch
程序媛-徐师姐3 天前
解决MacOS安装软件时提示“打不开xxx软件,因为Apple无法检查其是否包含恶意软件”的问题
macos·无法检查其是否包含恶意软件·打不开xxx软件
会飞的爱迪生4 天前
mac安装dockerdesktop优化
macos
刘贤松4 天前
Mac Electron 应用签名(signature)和公证(notarization)
javascript·macos·electron