gpt4 book ai didi

ios - iOS 项目的 XCode 8 中的 CMake 和代码签名

转载 作者:技术小花猫 更新时间:2023-10-29 10:36:49 27 4
gpt4 key购买 nike

CMake 能够为 XCode <=7 和 iOS 项目配置自动代码签名,目标属性设置如下

set_target_properties(app PROPERTIES XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "PROPER IDENTIFIER")

XCode 8 改变了签名过程。现在需要该选项选中项目设置“常规选项卡 -> 签名”中的“自动管理签名”。如果我为 cmake 生成的项目手动检查此选项,则签名效果很好。但是我没有找到默认情况下从 cmake 项目启用此选项的方法。这可以为 cmake (>=3.7.0) 完成吗?

最佳答案

如果你想在 CMakeLists.txt 中自动签名

SET_XCODE_PROPERTY(MyTarget CODE_SIGN_IDENTITY "iPhone Developer")
SET_XCODE_PROPERTY(MyTarget DEVELOPMENT_TEAM ${DEVELOPMENT_TEAM_ID})

DEVELOPMENT_TEAM_ID - 是您的团队 ID 例如。 2347GVV3KC


如果您想要手动签名:

SET_XCODE_PROPERTY(MyTarget CODE_SIGN_IDENTITY ${CODESIGNIDENTITY})
SET_XCODE_PROPERTY(MyTarget DEVELOPMENT_TEAM ${DEVELOPMENT_TEAM_ID})
SET_XCODE_PROPERTY(MyTarget PROVISIONING_PROFILE_SPECIFIER ${PROVISIONING_PROFILE_NAME})

CODESIGNIDENTITY - 设置为您首选的代码签名身份,查看列表:/usr/bin/env xcrun security find-identity -v -p codesigning

例如。 AAAAAAC9F10573BBBBBBBBBBBBF25F7445951F3D8

或者您可以只写:"iPhone Distribution" 但我不确定它是否是一般规则:)

PROVISIONING_PROFILE_NAME - 不带扩展名的文件名,例如。我的全名:Game_AppStore.mobileprovision 所以我在这里写 Game_AppStore

Provisioning profile previosly 应该添加到 Xcode 缓存中,这样它就可以在 ~/Library/MobileDevice/Provisioning\Profiles 中使用 More info您只需从 Xcode 中单击 Provisioning Profile: Name 并选择 Import Profile... 然后选择它即可。请记住,当您使其无效时,您需要将其从缓存中删除。


SET_XCODE_PROPERTY 是一个宏:

# This little macro lets you set any XCode specific property
macro (set_xcode_property TARGET XCODE_PROPERTY XCODE_VALUE)
set_property (TARGET ${TARGET} PROPERTY XCODE_ATTRIBUTE_${XCODE_PROPERTY} ${XCODE_VALUE})
endmacro (set_xcode_property)

关于ios - iOS 项目的 XCode 8 中的 CMake 和代码签名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40664125/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com