4

I am delivering an iOS app for a client and they are asking for the compiled/build files for the app and not the source code or an exported .ipa. I am wondering what compiled/build files are.

Is it just the .app that is created in /products whenever I build my app or something else that I need to do? I believe they are after these files so they can sign the app with their own production provisioning profile and to create a .ipa themselves.

What is an iOS app's compiled/build files and if it is just the .app how it differs from an exported .ipa?

JAL
  • 41,701
  • 23
  • 172
  • 300
Joe Benton
  • 3,703
  • 1
  • 21
  • 17
  • A .app cannot be installed, it must be zipped in the ipa directory format. if they hope to install the app, they'll need an ipa (clients don't always know what they're talking about, so you'll probably want to clarify this point). – Patrick Goley Mar 17 '16 at 22:11

3 Answers3

1

"Building" is a fairly general term, and it can refer to anything that is needed to go from editable source material (source code, scripts, raw data files, etc.) to a shippable software product. Building can (and usually does) involve several steps, such as pre-processing, compiling, linking, converting data files, running automated tests, packaging, etc.

"Compiling" is more specific, and almost invariably refers to a process that takes source code as its input, and outputs something runnable, typically machine code for either a physical or virtual machine, or source code in a different language.

  • I hope this helped!! –  Mar 17 '16 at 21:21
  • Thanks for your answer, I gather this is in general terms, and I'm asking specific to an iOS app/Xcode. I've updated my question to reflect this, but thanks for your overview on what build/compile means. – Joe Benton Mar 17 '16 at 21:24
1

I bet they are wanting the .app. Unfortunately, since they are being relatively vague with their request, I think you should confirm this with them. I wouldn't feel uncomfortable asking, because their terminology is not some universally accepted way of refering to some method of building iOS applications. Or, if you can find out what they plan to do with the compiled binary, that might help understand what they need.

FYI, here's a brief description of the difference between a .app or .ipa.

Community
  • 1
  • 1
wottle
  • 13,095
  • 4
  • 27
  • 68
  • Thanks for your answer! So you reckon an iOS app's compiled source code/build file IS the .app file created whenever you build/run the app that can be found in /products? – Joe Benton Mar 17 '16 at 22:00
  • Yes. That is the most likely thing I can think. Is this an app that they will be submitting to the app store? If so, they can take the .app, zip it up, and send it to apple for review. – wottle Mar 18 '16 at 13:40
1

Although vague, it's also possible they're looking for an Xcode Archive. This includes the compiled .app file as well as symbol information. You can build an archive to seed an application for testing or to validate and submit an application to iTunes Connect. If they want to submit or distribute the app without the source code, this is how you would do it.

JAL
  • 41,701
  • 23
  • 172
  • 300
  • Isn't that just a .ipa file? I was going to give them an .ipa but they specifically asked not for a .ipa and instead they asked for the build/compiled code and wondered if this was something else? – Joe Benton Mar 17 '16 at 22:09
  • 1
    @JoeBenton no, it would be a .xcarchive file, not an .ipa – Patrick Goley Mar 17 '16 at 22:10
  • Oh okay. So what's the difference between .ipa and .xcarchive? – Joe Benton Mar 17 '16 at 22:12
  • Read the article I linked to. You use an archive to submit an app to iTunes connect or Ad Hoc distribution. You can create an IPA file from an archive, and it includes the symbol table for symbolicating crash logs. – JAL Mar 17 '16 at 22:13
  • Okay thanks, so an app archive would match what they are asking as the source code being built and compiled, and would allow them to take this file and sign/release etc. And a archive is basically the step before making a .ipa file and constains the .apl file with some other info. – Joe Benton Mar 17 '16 at 22:18