IOS App Review Rejection Cordova based OBDX-18.3 - ios

Tried to upload Oracle-OBDX-18.3 IOS app in app store,rejection email contains
ITMS-90511: CFBundleIdentifier Collision - The AppName-Info.plist CFBundleIdentifier value 'org.apache.cordova.Cordova' of 'AppName.app/Frameworks/Cordova.framework' is already in use by another application.

Please set the bundle identifier as per the custom package structure on info.plist of all the related frameworks provided in the installer. Like OBDXFramework.framework, Cordova.framework, OBDXExtensions.framework, OBDXWatchFramework.framework. Oracle has given the steps on configuring the under identifier on the respective frameworks, which was mentioned on the iOS configuration document of version 18.3. Please verify the oracle documentation link for your better understanding.
Thanks!

Related

error loading archive into app store swift ios

I'm trying to upload the archive to app store, but this error crashes
No suitable application records were found. Verify your bundle identifier 'org.cocoapods.GoogleUtilities' is correct.
I have an admob framework connected via pods, but I have no idea what google utilites is
You should keep a unique bundle identifier for your project.
[ [1]: https://i.stack.imgur.com/v2bA9.png][1]
com.yourName.projectName.
YourName come automatically from your Apple ID .So First verify your Apple ID.
And project name you should keep unique.It's not similar with other project.
And don't use cocoaPods name in your project name.
GooleUtilities : This service provides utilities for string encoding/decoding, date formatting, JSON manipulation, and other miscellaneous tasks.

iOS - Missing CFBundleIconName in Xcode 9.2

I am uploading build to release app using Xcode 9.2 built with iOS 11 SDK. Binary is archived and uploaded successfully, but I get the following email back.
Dear developer,
We have discovered one or more issues with your recent delivery for
"". To process your delivery, the following issues must be corrected:
Missing Info.plist value - A value for the Info.plist key
CFBundleIconName is missing in the bundle ''. Apps that provide icons
in the asset catalog must also provide this Info.plist key. For more
information see
http://help.apple.com/xcode/mac/current/#/dev10510b1f7. Once these
issues have been corrected, you can then redeliver the corrected
binary.
Regards,
The App Store team
I found a solution.
Missing CFBundleIconName in Xcode9 iOS11 app release
But i need little bit more. I don't want to use *.xcassets file for app icon. I want to use image in xCode project folder for app icon.
Is it possible in xCode 9.2? if yes then how?
Haven't seen this listed on any of the other posts but this was my issue.
Make sure to check the target membership of your assets directory! If you do not correctly link the membership here, you will get this same super-generic error(Apple should do something about the error messages).
The target membership should correlate directly to targets for which you are using the icons. For example, I use this single directory for both my main app, and watch app assets, you must specify this by selecting the appropriate member.
There is a direct option not to use app icon from Assets

The bundle at 'my_app.app/ResearchKit/ResearchKit/Info.plist' does not contain a bundle executable

Update
XCode Version: 8.2
iOS Target: 9
Hopefully some can point out to me that this is not a bug. Very simply I pulled the latest stable version of researckKit, and I dropped the .xcodeproj file into my new iOS project, added the embedded binary. I created a couple steps that look fine in the simulator. My app builds fine and even the archive validates OK. Upload to app store is fine, but then I am receiving emails from the app store with 6 entries all look about the same, for 6 different Info.plist files inside the ReserachKit framework:
Unexpected CFBundleExecutable Key - The bundle at
'my_app.app/ResearchKit/ResearchKit/Info.plist' does not contain a
bundle executable. If this bundle intentionally does not contain an
executable, consider removing the CFBundleExecutable key from its
Info.plist and using a CFBundlePackageType of BNDL. If this bundle is
part of a third-party framework, consider contacting the developer of
the framework for an update to address this issue.
I have found quite a few answers on Stack Overflow, many people agreeing to do what was suggested in the error message: simply remove the CFBundleExecutable Key from the .plist files. I tried that, but then my archive will not even validate with the following error:
iTunes Store operation failed. Invalid Bundle Structure - The binary
file 'my_app.app/Frameworks/ResearchKit.framework/ResearchKit' is not
permitted. Your app can’t contain standalone executables or libraries,
other than the CFBundleExecutable of supported bundles. Refer to the
Bundle Programming Guide at
https://developer.apple.com/go/?id=bundle-structure for information on
the iOS app bundle structure.
** UPDATE **
Granted I pulled a fresh version of the ResearchKit framework from github for this project. So instead I just tried a copy of a version of ResearchKit from another Xcode Project that I have successfully deployed on the app store recently, i figure if it worked for that app it should go through for this app. But Alas, I am getting the same email error from the App Store about the Unexpected CFBundleExecutable Key.
Again this is an apple-supported free framework. There are simple instructions for how to use it on the github page, which I followed. I have used it before and submitted an app with this framework recently, which had no problems and is currently active in Test Flight Beta Testing. I also filed an issue on the GitHub project page.
I met this problem like yours,and I fixed it by:
Remove Executable file in ResearchKit
Find info.plist in ResearchKit,do:
delete info.plist in ResearchKit.
Or you can add Bundle version,Bundle identifier,Bundle versions in this info.plist,they should be same as your parameters in your own info.plist
check Target - Info - URL Types,check if there is illegal identifier
I contacted Apple Technical Support and they helped me solve the problem. Like I had suspected it was NOT necessary to alter the ResearchKit framework in any way for this to work correctly.
For me, the issue was that I was copying the entire source code, test cases, Xcode projects, and the rest of ResearchKit into the app.
I must have done this at an early step and didn't realize. What was helpful for me was to go to the Build Phases tab in XCode and look in the different sections. My error was that I had the researchkit framework in the sections: Link Binary With LIbraries and Copy Bundle Resources. I needed to remove those.
The correct configuration, which you get by dragging the xcodeproj file to the project and embedding the binary will just add on line to the Target Dependencies and Embed frameworks sections in Build Phases.
Here is a screenshot of my corrected configuration:

ERROR ITMS-90535: Unexpected CFBundleExecutable Key. Google Plus and Play Games Xamarin Component

I've been using the Google Plus and Play Games Xamarin Component (link) in the iOS version of my cross-platform app. I haven't had any trouble uploading it to the store in the past, but after upgrading to Xcode7, I receive the following error when trying to submit my .ipa through Application Loader:
ERROR ITMS-90535: "Unexpected CFBundleExecutable Key. The bundle at 'Payload/Brushfire.iOS.app/GooglePlus.bundle/GPPShareboxSharedResources.bundle' does not contain a bundle executable. If this bundle intentionally does not contain an executable, consider removing the CFBundleExecutable key from its Info.plist and using a CFBundlePackageType of BNDL. If this bundle is part of a third-party framework, consider contacting the developer of the framework for an update to address this issue."
Since this is a Xamarin Component, I don't believe I have access to the plist file to change this value, so I can't use the solution posed in ITMS-90535 Unable to publish iOS app with latest Google Signin SDK. I don't want to have to wait for an update to the component from Xamarin. Are there any workarounds that could help me get my app into the store?
Xamarin is currently working on a solution to this issue, though we do not have an exact ETA currently on when the component will be out.
I can be sure to let you know on this thread when the updated version is released.
You can also follow along on our forums here:
https://forums.xamarin.com/discussion/50817/google-maps-for-ios-component-update#latest
Thanks!
Step 1: Update to Xcode 7.1 Xcode
Step 2: deleted (Info.plist file, such as a third-party static library included) App excess Info.plist
Step 3: Remove third-party App resource package Info.plist (Uniform Resource Check App in .bundle package inside if there Info.plist, consider deleting or delete items inside CFBundleVersion and CFBundleIdentifier)

Framework CFBundleIdentifier Collision

I've made a custom SDK using Cocoa Touch Framework (followed these instructions to make it https://kodmunki.wordpress.com/2015/03/04/cocoa-touch-frameworks-for-ios8-remix/) .
One app, that is using this SDK is already uploaded to app store and is reviewed by apple and all is well.
Now I'm trying to submit second app to App store. All is well on the xCode, it shows that upload was completed successfully, but few minutes after uploading I get a letter that says:
CFBundleIdentifier Collision - The Info.plist CFBundleIdentifier value
'com.company.MySDK' of 'myApp.app/Frameworks/MySDK.framework' is
already in use by another application.
I don’t understand why apple even checks the app framework's bundleidentifier. Looks like there are lot of similar issues with using different bundles, but I haven not found a fix that would work for this issue.
Would be really thankful for help, thanks!
For me it was caused by framework's .plist keyword CFBundlePackageType that was using the default value APPL but had to be changed to FMWK (https://developer.apple.com/library/ios/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html#//apple_ref/doc/uid/20001431-111321).
if you are using Nested frameworks use "Do Not Embed" in the general tab-> framework and libraries
for example:
your project uses framework A and
and framework A uses frameworks B, C, ... Do not Embed these frameworks

Resources