< Back to knowledge base

Most common upload errors

When an app package is uploaded to Diawi, wether .ipa or .zip(.app), the content is processed to validate some key elements needed for the installation. This page provides some insight on most common errors that this processing might produce.

Invalid package

Diawi expects two kinds of packages for iOS applications: * .ipa file: generated by xcode using the Product > Build for running applied on a device configuration, the Product > Archive, then Window > Organizer > Archives, select the generated archive and click on Export > Save for Ad hoc/Enterprise/Development Deloyment. * .zip(.app) file: can be generated manually after a Product > Build for running applied on a device configuration, select the Products folder in the project view, right click Show in Finder on the .app, then it in the Finder

If the package is reported as invalid by Diawi, check that your performed those steps.

Missing embedded mobileprovision

iOS applications must contain an embedded provisioning profile: a .mobileprovision file built into the package. This is an automatic step performed by xcode since version 4.x.

Before that and iOS 4.x, mobileprovision files would have to be installed manually by the user. This is not the case anymore. It is even impossible now in iOS 8+ since Apple has completely removed the "Profiles" section in the Settings app.

When an app is installed, it checks the mobileprovision inside the package and uses it to accept or reject the app.

The mobileprovision may be missing from the package for the following reasons: * the app has not been signed correctly => check your project settings * the uploaded package is a Simulator version: the apps built for the iOS Simulator don't have provisioning profiles => check if you uploaded the "-iphoneos" version, not the "-iphonesimulator" one

This document is available on our public GitHub repository. Feel free to fork and send pull requests if you find any interesting information to add.