iOS Unable to Download App

Why am I getting this message?

Hi @jhennard,

Can you try to copy the URL from the email and open it in iOS Safari directly?

If that wouldn’t help please check the iOS device’s system logs: iOS app fails to install on device

Copying the URL from the email and opening in iOS Safari directly results in the same issue.

Trying on another device results in the same issue. Gmail and Chrome are not installed on the second device.

Attempts to find anything in the device logs results in nothing, although perhaps I’m looking in the wrong place?

Please let me know if I can assist in troubleshooting in any way.

I just found this in the log at https://www.bitrise.io/build/40f2c039f6c61bb1.

Perhaps this has something to do with it?

“is_enable_public_page is set, but public download isn’t allowed for this type of file”

That’s for the dSYM.zip file, not for the IPA.

Checking the logs the most likely cause is probably this:

ipa infos: map[min_OS_version:9.1 device_family_list:[1 2] app_title: bundle_id:com.REDACTED

For some reason the app_title is empty. This means that the Title metadata is missing in the .ipa

Did you try to download this .ipa and install it on your iOS device from your Mac?
Regardless, I’d suggest you to specify the Title metadata in xcode - I’d suggest you to check these, that none of these are empty: https://developer.apple.com/library/content/qa/qa1823/_index.html

We made some changes.

  • Added BITRISE_EXPORT_METHOD = ad-hoc for the features branch.
  • Added an IPA info step to the features workflow.

I was able to download the IPA from https://www.bitrise.io/build/7e2484715cd1e6e7

Then, I successfully installed the Freshop AdHoc.ipa from my Mac, through Xcode, and onto the device.

I could be wrong, but at this point it seems like the .ipa builds just fine, and can install independent of the Bitrise download.

The issue persists, and it takes a while before the Unable to Download App “” could not be downloaded at this time message appears.

The title is set to $(PRODUCT_NAME) and then replaced with a build script. I’m not sure how to confirm that the build script is actually running to confirm that the name is replaced. Any idea how I can confirm that? Even so, wouldn’t the fact that the .ipa installs just fine from the Mac rule out any possibility that the name was not set correctly?

We also noticed this in the logs, which does indeed show a missing app_title. What is the difference between app_title and app_display_name, and how do we make sure app_title is populated in this step?

IPA Info: {:file_size_bytes=>17596027, :icon_path=>"/Users/vagrant/deploy/icon.png", :app_info=>{:app_title=>"", :app_display_name=>"Freshop BETA", :bundle_id=>"com.freshop.ios.adhoc.consumer", :version=>"20180319", :build_number=>"1420", :min_OS_version=>"9.1", :device_family_list=>[1, 2]}, :provisioning_info=>{:creation_date=>"2018-03-22T14:24:08+00:00", :expire_date=>"2018-10-17T14:03:48+00:00", :team_name=>"FRESHOP, INC.", :profile_name=>"Bitrise ad-hoc - (com.freshop.ios.adhoc.consumer)", :provisions_all_devices=>nil}}

We ended up modifying our build script to include both CFBundleDisplayName and CFBundleName.

This resolved the issue.

Thanks so much for your help troubleshooting!!

1 Like

Glad to hear! :wink:

For future ref. the “build phase scripts” of the project are included in the verbose Xcode build log, which you can get the way it’s described here: Xcode exit code 65 / exit code 66 / raw-xcodebuild-output.log

Any time :wink: Let us know if you’d have any questions! :slight_smile: