The package at 'my_app.app/ResearchKit/ResearchKit/Info.plist' does not contain the package 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 out the latest stable release of researchckKit and I dropped the .xcodeproj file into my new iOS project, added the embedded binary. I've created a couple of steps that look great in the simulator. My app builds fine and even the archive checks OK. The app store upload is fine, but then I get emails from the app store where 6 entries look about the same for 6 different files
inside the ReserachKit framework:
Unexpected key CFBundleExecutable - package in 'my_app.app/ResearchKit/ResearchKit/Info.plist' does not contain a batch executable. If this bundle intentionally does not contain an executable, consider removing the CFBundleExecutable key from its Info.plist and using the CFBundlePackageType for the BNDL. If this bundle is within a third-party framework, contact the framework developer for an update to resolve this issue.
I found several answers on Stack Overflow , many people agree to do what the error message suggested: just remove the CFBundleExecutable Key from the .plist files. I tried this, but then my archive won't even be checked with the following error:
The iTunes Store operation failed. Invalid Bundle structure - binary file 'my_app.app/Frameworks/ResearchKit.framework/ResearchKit' is not allowed. The app can not contain standalone executables or libraries other than CFBundleExecutable supported packages. See the Bundle Programming Guide at https://developer.apple.com/go/?id=bundle-structure for information on the structure of an iOS app bundle.
** UPDATE **
Of course, I pulled the new Framework ResearchKit version from github for this project. So instead, I just tried a copy of the ResearchKit version from another Xcode project that was recently successfully deployed to the app store, and I think if that worked for this app, it should go through that app. But alas, I am getting the same email error from App Store about Unexpected CFBundleExecutable Key.
Again, this is a free apple-backed framework. There are simple instructions on how to use it on the github page I followed. I have used it before and presented an application with this structure lately, which had no problems and is currently actively working in test flight test. I also logged the issue on the project's GitHub page .
source to share
I contacted Apple tech support and they helped me fix this issue. As I suspected, this is not necessary to change the structure of ResearchKit for this to work correctly.
The problem for me was that I was copying all of the source code, test cases, Xcode projects and the rest of ResearchKit into the application.
I must have done it early on and didn't get it. It was helpful for me to go to the Build Phases tab in Xcode and look in the different sections. My mistake was that I had a researchkit structure in the sections: Link Binary With LIbraries and Resource Copy Resources . I needed to remove them.
The correct configuration you get by dragging the xcodeproj file into the project and embedding the binary will just add the line to the Target Dependencies and Insert Frames sections in Build Phases .
source to share
I met this problem as yours and I fixed it:
- Remove executable file in ResearchKit
- Find info.plist in ResearchKit, do:
Remove info.plist in ResearchKit. Or you can add Bundle version, Bundle id, Bundle version in this info.plist, they should be the same as your parameters in your own info.plist
- check Target - Info - URL types, check for invalid id
source to share