Rejected OS X Universal Binary App

My OS X app got rejected with the following comment:

Unsupported Architecture - Application executables may support the Intel architectures:

x86_64 (64-bit)

Other architectures may not be included in submitted binaries. Confirm that your Xcode project’s build settings include the x86_64 architecture and no others.

Since when is only 64bit needed? Didn’t saw any Apple note for this.
I have asked for more info why 32bit is not accepted anymore.

Ffffffffffffffuuuuuddddggggeeee you Apple! Just as we’re about to launch an App we’ve spent the last 3 months working on!

uhhh… this causes pressure on Xojo…

Out of the frying pan that was 64bit iOS and into the fire of 64bit OSX! Gotta love Apple…

I haven’t found any announcement from Apple indicating this, so I think it must be something different.

I found a feature request:

Don Jungk on 23 avr. 2008 at 00:57…

and this is scheduled.

25 days for its 7th birthday.

Christophe, this is not a 32 bit issue. What Apple tells you is that the app is not an ARM app. AFAIK only the simulator runs x86 apps. Could you have confused a debug build and the App Store one ?

At any rate, an x86 app will not even execute if you try to install it on a device. So something is terribly wrong here, which Apple may not be the cause.

The OP is about the Mac AppStore, not iOS.

It is an OS X app. Not an iOS.

The odd thing is that a friends app has been approved which is also made with Xojo (though it was an update).

One thing that may explain why it is has been rejected is that it uses an commandline tool (that is 32bit too).

Anyhow, I am waiting for the reviewer response. Maybe it is just when you use helper binaries that are 32bit.

My Apps Showcase has just been approved. I don’t believe that OS X is now 64bit only.

[quote=177228:@Christoph De Vocht]It is an OS X app. Not an iOS.

The odd thing is that a friends app has been approved which is also made with Xojo (though it was an update).

One thing that may explain why it is has been rejected is that it uses an commandline tool (that is 32bit too).

Anyhow, I am waiting for the reviewer response. Maybe it is just when you use helper binaries that are 32bit.[/quote]

Oops. Sorry about the confusion.

They had started rejected QuickTime apps back in 2013 without any sort of previous warning, so a sudden requirement for 64 bit is not entirely impossible. But it kind of contarsts with what they did for iOS. If indeed no new submission can be done in 32 bit, it looks like Xojo engineers are in for yet another “interesting” time.

In the MAS, updates for apps submitted before are grandfathered to their original framework, so it explains your friend was approved. I have updated 2013R3.3 apps after the Quicktime ban in 2014, that had been submitted before.

Maybe Apple engineer was confused and applied the iOS requirement to an OS X app?

I just noticed the helper app is a universal 32bit version. Maybe thats the issue.

The Apple Document [url=https://developer.apple.com/library/mac/releasenotes/MacOSX/WhatsNewInOSX/Articles/MacOSX10_9.html]What’s New in OS X 10.9 ?[/url] stated to the public:

New Frameworks

The following frameworks have been added in OS X v10.9:

AV Kit (AVKit.framework). AV Kit is a modern API for incorporating media playback capabilities into apps. AV Kit provides view-level services for media playback, complete with user controls, chapter navigation, and support for subtitles and closed captioning. Built on the most modern OS X media technology, AV Kit is an ideal starting point for developers looking to transition their QuickTime-based applications to AV Foundation.

For more information, read AVKit Framework Reference.</quote>

As usual, Apple Developers get the information far in advance (WWDC of that year). So, they do not make the change at the last minute without advertising to the correct channel.

So your helper app is built with something other then Xojo?

Xojo apps are 32 bit as well, but until now, there was no report of rejection for that. I just checked in App Dev forum, no such news either. Christian may very well be right. The reviewer may have confused just as I did iOS and Mac OS X…

Seems like Christophe included PPC code.

Yes, just build with LLVM. But the issue is very probably that the binary is a universal binary (PPC/Intel).
I didn’t noticed this until about an hour.

Phew!

If you’re using App Wrapper 3, there’s an option to auto remove executables on the ‘Other’ pane. By default it should have stripped the PPC for you.