When I am try to submit my app to app store, I am getting the error:
ERROR ITMS-90685: "CFBundleIdentifier Collision. There is more than
one bundle with the CFBundleIdentifier value
com.companyname.projectName under the application ProjectName.app"
Can any one help me?
Have you got an App Extension in your app?
I had this error because of Cocoapods embedded frameworks inside App Extension folder.
You need to remove build phase '[CP] Embed Pods Frameworks'
from Extension target.
I wrote such ruby script for that:
# remove.rb
require 'xcodeproj'
project_path = "Keyboard.xcodeproj"
project = Xcodeproj::Project.open(project_path)
project.targets.each do |target|
puts target.name
if target.name.include?("Extension")
phase = target.shell_script_build_phases.find { |bp| bp.name == '[CP] Embed Pods Frameworks' }
if !phase.nil?
puts "Deleting Embed Pods Frameworks phase from #{target.name}…"
target.build_phases.delete(phase)
end
end
end
project.save
In CocoaPods 1.1.0 that should be fixed: https://github.com/CocoaPods/CocoaPods/issues/4203
If you have an App Extension, make sure it's bundle identifier is distinct from your app's bundle identifier.
Example:
Does not work
App Bundle Identifier: company.myApp
Extension Bundle Identifier: company.myApp
Works
App Bundle Identifier: company.myApp
Extension Bundle Identifier: company.myApp.extension