我正在构建的应用程序包含用于开发目的的调试视图,并且仅当应用程序是在调试环境中构建时才能显示。
我还想完成的是,我希望能够在构建的调试模式中显示分支名称。由于一直在部署各种构建,因此清楚地了解构建来自哪个分支将非常有帮助。
我尝试了一些方法(例如 Swift 脚本,但意识到它不能在 iOS 上执行,等等),但最终没有成功。
有谁对如何实现这一目标有任何想法?由于此功能不会进入 AppStore,因此不受 Apple 规则的约束,因此我对私有框架持开放态度。
小智 6
从本文中,您可以在构建阶段使用此脚本将 git 信息插入 Info.plist,然后您可以使用 Swift 进行查询。
#!/bin/sh
git_version=$(git log -1 --format="%h")
git_branch=$(git symbolic-ref --short -q HEAD)
git_tag=$(git describe --tags --exact-match 2>/dev/null)
build_time=$(date)
git_branch_or_tag="${git_branch:-${git_tag}}"
info_plist="${BUILT_PRODUCTS_DIR}/${EXECUTABLE_FOLDER_PATH}/Info.plist"
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion '${git_branch_or_tag}-${git_version}'" "${info_plist}"
/usr/libexec/PlistBuddy -c "Set :BuildTime '${build_time}'" "${info_plist}"
Run Code Online (Sandbox Code Playgroud)