After 4 months developing my first iOS app, it's time to submit it to the App Store
. I created the app in iTunes Connect
, filled in all the details, set up the correct Bundle ID
in both Connect
and Xcode
. However, I've struggled the last 3 days trying to solve this weird problem. It seems like xcode is trying to upload Cocoapods
frameworks, not my main app.
After archiving, I went to Window > Organizer > Validate...
. I see the following screen:
The error:
(For googlers: No suitable application records were found. Verify your bundle identifier 'org.cocoapods.Alamofire
' is correct).
The error message indicates that it's trying to match a Bundle ID
according to a framework's name, not my own bundle (e.g com.organization.AppName
). I can't find answers anywhere. I tried doing the following in my Podfile
(which has use_frameworks!), as well as my different conf combinations but had no success.
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
Questions:
Xcode
trying to match a framework's bundle id
instead of just my main application?EDIT 1: I was able to get past this problem, but that caused another problem later, so I still don't have a solution. Basically, Alamofire Pod (from Cocoapods) has a bundle id com.xxx.Alamofire
. I changed it to com.xxx.myAppName
. With that, I was able to send it to the App Store, however I can't install the app in my iPhone from TestFlight due to the following error:
4/22/16, 12:50:29 AM itunesstored[124]: [ApplicationWorkspace]: Failed to install application: com.xxx.myAppName; /var/mobile/Media/Downloads/5927832272594571027/-6969961974973998640; Error Domain=LaunchServicesError Code=0 "(null)" UserInfo={Error=DuplicateIdentifier, ErrorDescription=The parent bundle has the same identifier (com.xxx.myAppName) as sub-bundle at /private/var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.IVHCuO/extracted/Payload/MyApp.app/Frameworks/Alamofire.framework}
iTunes connect -> Your app -> on the left side panel App information and under General information you can locate the bundle ID drop down menu and select a different id and then save your changes.
Bundle ID is the identifier of an App, but App ID is not. App ID is the connection between App and provisioning profile. From "About Bundle IDs" section in here, you can see, "A bundle ID precisely identifies a single app".
I was receiving this exact error when trying to submit the app to iTunes Connect: "No suitable application records were found. Verify your bundle identifier 'org.cocoapods.Alamofire' is correct".
I finally fixed it by changing the Bundle OS Type code to APPL.
It works perfectly for me. I just located Info.plist right-click open as "source code" and I changed <key>CFBundlePackageType</key>
to string APPL
<key>CFBundlePackageType</key> <string>APPL</string>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With