Problem Uploading to MAS

When uploading an app to MAS I get the following error message

ERROR ITMS-90334: "Bundle identifier mismatch. The executable at XojoFramework in Linreg.app/Contents/Frameworks/XojoFramework.framework has been signed with identifier “com.xojo.framework” which does not match the bundle identifier "com.xojo.XojoFramework’.

I am using Xojo version 2016 Release 1, using macbook pro and OS 10.11.12
Where did ‘com.xojo.framework’ come from?

Any suggestions appreciated

On the “General” tab of App Wrapper, there is a small gear icon next to the “Code Signature” area. Press that gear and UNCHECK the box beside “Use same identifier for all components”. Now re-wrap with AW and try again.

Thanks but I am not using App wrapper!

I received a very similar error when using App Wrapper with that box checked. Then you’ll have to check your signing method for such a situation.

The issue is that everything must be signed. Inside the bundle. The error comes from not using the --deep option.

I should say, however, that App Wrapper is the best investment I ever did when it come to placing apps in the MAS. It takes away all the digital sign charade. I rather spend time polishing my apps or writing new ones than wasting time with haphazard command lines.

Nearly everyone here will recommend AppWrapper to you :stuck_out_tongue:
It’s the best ??

Another +1 for App Wrapper. Paid for itself on my very first use.

+1000

If you are doing your own bash script, try this

[quote]cd /[Your App Path]/‘Linreg.app’/‘contents’/‘Frameworks’/‘XojoFramework.framework’/‘Versions’/‘A’
codesign -f -s ‘3rd Party Mac Developer Application: [YourID]’ XojoFramework[/quote]

Do this ahead of the other code sign statements.

@Edwin Lau I think you mean “3rd Party Mac Application: [YourID]” or “Mac App Developer: [YourID]”.

The long and the short of it is that you are responsible for all the code in your application bundle and therefore every single MachO executable MUST be signed with your certificate when submitting to the Mac App Store.

Which is what App Wrapper does, it searches the bundle for any MachO executables and signs them, before sealing the bundle. App Wrapper is currently part of the http://omegabundle.net/

[quote=262503:@Sam Rowlands]@Edwin Lau I think you mean “3rd Party Mac Application: [YourID]” or “Mac App Developer: [YourID]”.
[/quote]

The “3rd Party Mac Application” would be the one for MAS submission

Yeah my bad, it’s “Mac App Distribution:” not “Mac App Developer:”.

Thanks for all the suggestions.
I have now codesigned my App, uploaded it to MAS and it is is accepted and Ready for sale.
I used the following code:-

codesign -f -s ‘3rd Party Mac Developer Application: MY ID’ MYAPP.app/Contents/Frameworks/*.dylib

codesign -f -s ‘3rd Party Mac Developer Application: MY ID’ MYAPP.app/Contents/Frameworks/XojoFramework.framework/Versions/A/XojoFramework

codesign -f -s ‘3rd Party Mac Developer Application: MY ID’ MYAPP.app/Contents/Frameworks/XojoFramework.framework

codesign -f -s ‘3rd Party Mac Developer Application: MY ID’ --entitlements entitlements.plist ‘MYAPP.app’

codesign -d -vvvv MYAPP.app

productbuild --component ‘MYAPP.app’ /Applications --sign ‘3rd Party Mac Developer Installer: MY ID’ MYAPP.pkg

This works for my simple Apps, for more complex Apps with Plug ins etc I am sure App Wrapper is a better option.

Even for simpler projects App Wrapper can save you time and hassle, it does a lot more than code sign applications and create an installer.

A comparison can be found at the following page: http://www.ohanaware.com/appwrapper/#oldvsnew

There’s also a FREE trial, so you can download it and try it out with zero risk.