My Mac app recently got rejected by iTunes Connect. See below for error. Any idea as to what’s going on? I have submitted this app many times in the past and didn’t get this error.
Unsupported Architecture - Application executables may support either or both of the Intel architectures:
i386 (32-bit)
x86_64 (64-bit)
Other architectures may not be included in submitted binaries. Confirm that your Xcode project’s build settings include those architectures and no others.
Specifically, we found the following unsupported architectures in your binary:
i386 (in com.mycompanyname.myappname.pkg/Payload/myapp.app/Contents/Plugins/FileBrowserBundle.bundle/Contents/MacOS/FileBrowserBundle)
This is a good opportunity to fix another bug that rejects our Mac builds.
Apple request to unlink the GameKit framework
Please put a choice in the Mac player settings to link/unlink the Gamekit framework.
This would be a very useful feature. Now we cannot submit, only with a dirty hack.
My rejection did not mention Mono, but it mentioned my plugin FileBrowserBundle. Does macOS standalone support 32 bit or is it exclusively 64 bit (2017.4)? I’m not sure with how to proceed in regards to fixing this problem. I have submitted my app with this plugin many times in the past without issue.
See attachment, the inspector for my plugin does not even have an x86 option, only x64. Yet Apple still claims that it has x86.
Another thing that doesn’t make sense to me. Apple says that binaries must be i386 or x86_64, and that any other type will be rejected. By my binary IS x86, so I am totally complying to their request yet still getting rejected.
You can check what slices your binaries have with ‘lipo’. For example, check your plugin in a built app using; > lipo -info Your.app/Contents/Plugins/x86_64/YourPluginName
You can remove unwanted slices like; > lipo Your.app/Contents/Plugins/x86_64/YourPluginName -thin x86_64 -output Your.app/Contents/Plugins/x86_64/YourPluginName
This is because since January 2018 Apple no longer accepts architectures other than 64 bits. Recently I found the same problem, I finally solved it by eliminating the i386 architecture of each one of the plugins that contained it.
I also notice that you may find other errors, such as the collision of the plugin if there is already a version of the app in the IOS Apple Store, for this you must modify the Info.plist of each plugin in the .app. You can change for example the , with that would be enough.
Another error that can result in the validation of the Mac Apple Store is this: “unsealed contents present in the bundle root”
To fix it, it is convenient to delete all .meta files from all your plugins in the .app.
Although I must say that I’m still trying to solve another problem, due to the bad behavior of the fullscreen option in macOS, Apple keeps rejecting my app. ¬¬
Any help on the problem of fullscreen in macOS?
Thank you and good luck to those who develop an app for the Apple Store Mac!
I have sent Bug report to Unity, but no one following my case. I suggest everyone send your bug report to Unity. Let them know we need publish to macStore. Not simply can build a mac app is enough.
Meet macStore requirement is the most important!
All other improvements are nothing, if you cannot publish to macStore.
Regarding these two files, the next 2018.2 patch release and the first 2018.3 beta (both yet to ship) should have the 32-bit slice removed from both files.