3 Replies Latest reply on Apr 29, 2014 4:08 AM by Kutir Mobility

    Issues with AD-Hoc distribution on iOS

    Krzysztof Zabkowski



      I've been trying to produce an .ipa file for the AD-Hoc distribution of the app (outside the app store). My setup is OSX 10.9.1, RhoStudio 4.0 and XCode 5.0.2. Application is using rhoelements. I am able to set up XCode project, build and run on the device. However, if I'm trying to produce an archive, build crashes with linker being unable to find libBarcode.a.

      After some investigation I've found that some of the libraries should be copied to the temporary archive folder (Library/Developer/Xcode/DerivedData/rhorunner-project/ArchiveIntermediates/rhorunner/IntermediateBuildFilesPath/rhorunner.build/Release-iphoneos/rhorunner.build/), but some of them (namely: libBarcode.a, libHardwarekeys.a, libIndicators.a) are not. Those left out libraries are from rhoelements.


      I managed to produce .ipa archive in two ways:

      a) Copy missing libraries to the mentioned above folder during the build.

      b) Run rake device:iphone:production


      (a) is obviously rather cumbersome, because it has to be repeated every time an archive build is created - whole directory is wiped out before build. Moreover, you need to place those files before build process will be at the linking stage.

      (b) has several issues - in build.yml there is a 'provisionprofile' entry, but it requires UUID of the provisioning profile. This UUID changes each time a new device is added to it, so it's not really a good solution. What is more, getting UUID of the profile is quite tricky.


      So my questions are:

      1. Is there a proper way to produce archive build, without resorting to (a)?

      2. If using the (b) way, is there a way to provide just the name of the provisioning profile instead of UUID?



      Best Regards,

      Krzysztof Zabkowski