对于我创建的pod,cocoapod设置org.cocoapods作为我的pod的bundle标识符的前缀:
我希望能够设置我自己的前缀,但我没有找到任何选项在podspec中这样做。
任何人都知道这个选项是否存在?
的问候。 塞巴斯蒂安。
答案 0 :(得分:1)
您可以为开发窗格提供自己的plist文件,如下所示:
s.pod_target_xcconfig = {
'INFOPLIST_FILE' => '${PODS_TARGET_SRCROOT}/Resources/YourPod-Info.plist'
}
然后,您只需要在该plist内更改Bundle identifier
。
答案 1 :(得分:1)
您需要同时提供两者
s.info_plist = { 'CFBundleIdentifier'=>'com.myorg.mylib' }
s.pod_target_xcconfig = { 'PRODUCT_BUNDLE_IDENTIFIER':'com.myorg.mylib' }
答案 2 :(得分:0)
到目前为止,此选项不存在:http://www.cisco.com/c/en/us/support/docs/security-vpn/kerberos/118841-configure-kerberos-00.html
的问候。 塞巴斯蒂安。
答案 3 :(得分:0)
可能的解决方法是使用post_install处理程序。这是一个示例脚本:
post_install do |installer|
installer.project.targets.each do |target|
target.build_configurations.each do |config|
if config.name == 'BREnterprise'
config.build_settings['CODE_SIGN_IDENTITY[sdk=iphoneos*]'] = 'iPhone Distribution: The Carter Group LLC'
config.build_settings['PROVISIONING_PROFILE'] = '${BR_ENTERPRISE_PROVISIONING_PROFILE}'
end
end
end
# change bundle id of each pod to 'com.bottlerocketapps.*'
bundle_id = 'com.bottlerocketapps'
directory = installer.config.project_pods_root + 'Target Support Files/'
Dir.foreach(directory) do |path|
full_path = directory + path
if File.directory?(full_path)
info_plist_path = full_path + 'Info.plist'
if File.exist?(info_plist_path)
text = File.read(info_plist_path)
new_contents = text.gsub('org.cocoapods', bundle_id)
File.open(info_plist_path, "w") {|file| file.puts new_contents }
end
end
end
end
答案 4 :(得分:0)
有一种简便的方法可以从this answer
Info.plist DSL将包含在1.8.0版本中。
设置捆绑包标识符:
# in .podspec
s.info_plist = {
'CFBundleIdentifier' => 'com.myorg.mylib'
}
当前的Cocoapods版本是1.8.0 beta2。我刚试过这个版本,它可以工作。但是,如果使用“ pod trunk push”,则会显示一些错误消息“ The Pod Specification未通过验证”。也许我们需要等到1.8.0版本发布。