How To Create IPA

Can someone Please give me a simple way to create an IPA file on XoJo.

Roger

Buy Xojo iOS.
Set ‘build for app store’ in the IDE
Build.

What do you need help with?

You should attempt to build and test your app with IDE and simulator prior to making that purchase.

1 Like

Thanks Guys, I already own it. I distribute my apps via installr ( previously built in Lua or swift, pretty easy to create IPA) so I Have to upload an IPA file with all permissions in place. I will try to build for App Store as I have not tried that yet. Thanks for the reply and Info


Roger

Yup.
Unless you tick for App Store, I think it only creates an APP file for use in the simulator.

where do you set distribution provisioning profile ?

It sounds like you may be distributing outside the App Store. Almost all my iOS work is distributed using Enterprise profiles, and using tools other than Xojo (in part because the projects pre-date Xojo support for iOS, and require features not easily done in Xojo yet.).

But back in 2019, I did experiment with a project and to get the Enterprise profile to code sign an *.ipa had to jump through a few extra hoops. You can read about some of what I did in an old thread here.

I can’t tell you if the process works the same now as 2019, but the thread may give you some hints. Review the whole thread; not just my post.

Thanks I will read now


If you do ever need to create an ipa from the .app version just create a folder called ‘Payload’ place your application within that folder. Compress the folder by right clicking it and selecting ‘Compress’ Then rename the Payload.zip to your application name .ipa and you have your ipa file.

IIRC, the correct mobileprovisioning file has to be in there someplace too, and may not be present in what Xojo creates.

Yes as a fellow Enterprise developer I know we have to add our provisioning file. If they have registered with Apple and have a Team set in their Xojo when they build. They should be able to run that ipa on any device they have registered for development

How to create IPA: get yourself some malt, hops and yeast.

5 Likes

Thanks Everyone, Douglas, you are correct, I am distrubiting outside of the App Store using the Installr web site, Still Trying to wrestle this down
:slight_smile: For the record I find Xojo works pretty well for IOS (not swift perfect) but I can’t find the secret sauce to create an IPA file


Roger

I had not heard of that one before, but from a skim of the site it appears you are just using an ad-hoc profile. But that they can auto register devices for you (up to the annual limit Apple has per device type) and auto generate new profiles. Intriguing but not practical for my clients who use Enterprise licenses to get unlimited device installs.

If you are letting them to do, then it seems to me they must be registering devices for you on Apple, generating a new profile including those device(s) and inserting that profile into your *.ipa to replace the one you upload.

But whatever, as I recall from making my own *.ipa many years ago:

  • Right click your *.app file and “Show contents” (an *.app is just a folder)
  • If there is a file “embedded.mobileprovision”, delete it
  • Drag in provisioning profile you want to use
  • Rename to “embedded.mobileprovision”
  • Close view of *.app folder contents
  • Create empty folder “Payload”
  • Drag / copy your *.app into the Payload folder
  • Right click the Payload folder and select “Compress”
  • Rename that *.zip file to *.ipa

You can probably do all this from a Xojo build script. And Xojo may in fact be already inserting the right ad hoc profile for you already. Examine the contents to see if it has a file “embeded.mobilprovision”. If it does, you may be able to just start at the step where you create empty folder “Payload”.

3 Likes

Thank You, I will try and let you know


Roger

This got me a lot closer. But, it’s still complaining about"

ERROR ITMS-90034: “Missing or invalid signature. The bundle ‘com.softbasesystems.softbasemechanic’ at bundle path ‘Payload/Softbase Mechanic.app’ is not signed using an Apple submission certificate.”

So, what is needed here?

PS sorry, complete newbie to iOS stuff.

Probably something that was not needed back when I did that many years ago now. Perhaps you may get farther if you try the XReSign open source project.

Like I said, I don’t use Xojo for my iOS projects (all my major iOS projects pre-date Xojo support) and I can’t justify a full rewrite to Xojo for those projects.

Thanks. I’ll continue my quest through the muddy waters of iOS.