使用Xcode和&amp ;;进行代码签名可可豆荚

时间:2016-02-29 17:57:31

标签: ios xcode swift cocoapods code-signing

我的项目中添加了一个pod。目前我已经添加了2个pod。所以Pods.xcodeproj中有三个目标。

我的podfile看起来像这样

platform :ios, "8.0"
use_frameworks!

target 'ARSConsumerMaster-Sample1' do

pod 'ObjectMapper', '~> 0.19'
pod 'JSONModel', '~> 1.2.0'

end

target 'ARSConsumerMasterTests' do
end

target 'ARSConsumer-Sample2' do
end

我找到了这个片段。但不知道在哪里写这些

post_install do |installer|
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['EXPANDED_CODE_SIGN_IDENTITY'] = ""
            config.build_settings['CODE_SIGNING_REQUIRED'] = "NO"
            config.build_settings['CODE_SIGNING_ALLOWED'] = "NO"
        end
    end
end

即使我使用这个并且说不在构建设置中进行协同设置,我也会收到错误,即最新版本中的代码签名是强制性的。

我应该为我的pods项目创建单独的配置文件/ Bundle标识符吗?我该如何编码签名?

3 个答案:

答案 0 :(得分:2)

这解决了问题

使用TeamId创建ExportPlist.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>teamID</key>
        <string>xxxxxxxxx</string>
        <key>method</key>
        <string>app-store</string>
        <key>uploadSymbols</key>
        <true/>
    </dict>
</plist>

xcodebuild -exportArchive \
           -archivePath ${WORKING_DIRECTORY}/Archive/${APP_NAME}.xcarchive 
           -exportOptionsPlist exportPlist.plist

答案 1 :(得分:1)

我已将此代码段添加到PodFile。我能够使用App Store配置文件和证书成功构建。但是部署失败并出现错误

“无效的代码签名权利。您的应用程序包的签名包含iOS上不支持的代码签名权利。具体来说,值为'XXXXXXXXXX.com.company.appcenter',用于'Payload / app / Frameworks中的关键'application-identifier' /Alamofire.framework/Alamofire'不受支持。此值应为以TEAMID开头的字符串,后跟点'。',后跟包标识符。“

XXXXXXXXXX是注册appid的前缀

答案 2 :(得分:0)

如果您使用分发证书来创建构建,请将pod的代码签名也设置为iOS分发 - &gt;自动的。

如果您使用开发证书来创建构建,请将pods的代码签名也设置为iOS开发 - &gt;自动的。