I have signed a code with a distribution provisioning profile but when I generated the ipa in XCode 5.1 (Save for Enterprise/Adhoc Deployment), the app does not install in my device. I have checked that the distribution profile is properly aligned to the production certificate that is installed in my Macbook. Any reasons or solutions so that I can install my app? Thanks!
Make sure you are using Adhoc Distribution Provisioning Profile, not AppStore Distribution Provisioning Profile. AppStore Distribution Profile is required to distribute app from App Store, in your case you need to do following things in your Developer Account.
Add your Device in Devices List.
Create an Adhoc Distribution Provisioning Profile.
Select and check all the Devices listed.
Sign with the Distribution Certificate, and Adhoc Profile.
Create Adhoc Build, create IPA, and install.
Visit Apple Doc for more information.
Hope it helps.
Cheers.
Related
So I'm not using enterprise distribution profile to archive and export my project into IPA file.
I am using a valid distribution certificate though.
On XCode organizer I've made sure that everything is valid by clicking on the validate button for my particular archive before exporting it using the exact same distribution certificate and distribution provisioning profile. Also, I've made sure that I checked App Store as the method of distribution.
So I assumed everything checked out, then I distributed the IPA through diawi.
This is what I used to distribute my development IPA at the early stage of this project. However, upon opening the diawi link, installation just failed on my device saying "Unable to download" every single time.
Now I'm just wondering is it not at all possible to distribute through diawi if I'm not using enterprise distribution profile to build the ipa itself?
Or am I building it the wrong way for the intended purpose?
I'm very new to this whole Apple environment so not sure if I'm understanding the process correctly. I'm developing this from a react native project in case you need to know.
Thanks in advance for any pointers! :D
EDIT:
There seems to be confusion in the answers so far. Just to clarify, I'm NOT using enterprise distribution profile nor I am using development provisioning profile. So adding UDID to the provisioning profile is not an option. The case I'm asking about is for ipa signed with app store distribution provisioning profile which I'm trying to share using diawi. It doesn't seem to be possible to distribute ipa signed this way with diawi based on my research, but I just wanna be extra sure. Sorry for the confusion. :)
You need to have the UDID of downloading device added to the provisional profile. Login to your apple developer account and check if the device is added or no. If not add that device and then update the provisional profile by selecting that new UDID. Download the updated profile and the build.
Turns out it's true that diawi can only distribute in-house apps (signed using enterprise program account) and development provisioning profile signed apps.
The reason what I'm trying to do is not working (not installing through diawi) is because I'm trying to distribute an app signed with classic apple account's distribution provisioning profile instead of development provisioning profile
As far as I my googling went yesterday, apps signed with distribution provisioning profile under classic account is only distributable through app store or test flight.
Let me know if I miss anything.
I lost few days trying to figure this out. I created new provisioning profile on my dev account for Ad Hoc distribution, I added required certificates. I did set everything to this profile in General tab and Build settings for both project and target, I'm not using Automatic signing. When I archive project I'm using diawi app to install .ipa file on my iPhone but I keep getting error that provisioning profile inside this app doesn't seem to contain your device's UDID.
your provisioning profile must contain your device's UDID.
I would like to know the difference between a normal iOS profile (configuration profiles, restriction profiles etc) and a provisioning profile. This is in relation to using the MDM profile commands. There are commands to install/remove a profile and there are commands for install/remove provisioning profile.
What is the difference?
Thank you
A provisioning profile is a profile that contains information about the app's signature. It is really only required in early versions of iOS 5 where you can not install an .ipa without first installing the provisioning profile. Starting late iOS 5, Apple introduced a feature where the XCode bundles the embedded.mobileprovision file into the .ipa so modern MDM servers can skip this.
We are using iOS enterprise account for distributing our iOS app. We are using the in-house distribution scheme of enterprise program.
As far as my knowledge, we don't need to install the in-house provisioning profile in the targeted device. Also, I believe that we don't need to add the device UDID in iOS portal since it's an enterprise account. Please correct my last two statements if my knowledge is wrong.
I am creating the IPA file using the in-house provisioning profile only. But while installing the same on one of our devices (iPhone 5s), I am getting below error.
"**A valid provisioning profile for this executable was not found.**"
I tried to install the same IPA file on another device (iPhone 4s). I have not installed the distribution provisioning profile in that device also. And it's working fine there. So only I concluded that We don't need to install any provisioning profile on the device in case of iOS enterprise program.
Below is my provisioning profile from enterprise account which I am using.
I am not sure why this is happening. Please help me and let me know if I am missing something.
You have to use a provisioning profile that is set for distribution. This profile needs to be using a certificate that is installed on the Mac you want to create the archive from. The profile gets installed along with the application.
You do not have to have the device added to the portal (only development devices need to be added).
One note - the profile will expire yearly. You will have to publish at least one update every year to include an updated and renewed provisioning profile.
Here's some screenshots:
Keychain Access:
Build Settings (Xcode):
Archive:
I looked on stack overflow there are many similar questions but could not understand exactly. As my knowledge there are three types provisioning profile -
Development provisioning profile
Ad hoc distribution provisioning profile
App store distribution provisioning profile
Development provisioning profile allows for testing and debugging.
Ad hoc distribution for beta testing without using Xcode.
But my question is that .ipa created for testing using development provisioning or using adhoc distribution provisioning, What is the difference in both ipa?
Thanks for your answer.
Development provisioning profile
the development provisioning profile is for testing your App on a device (iPad, iPhone, iPod Touch)
Ad hoc distribution provisioning profile
Adhoc testing is when you have completed development and want to distribute your app to multiple users for testing (your second question). Just create a distribution profile for adhoc testing and select all the device ids for which the profile is valid. In that case you will only need to send the .app file and .mobileprovision file to each user testing your app.
Details Desription:
If you'd like to install your software on several devices without using the App Store, you'll have to create an Ad Hoc distribution profile with the device ID numbers, and install that profile as well as the software, on all of the devices.
App store distribution provisioning profile
For submission of the app to app store, you have to create a distribution mobile provisional file with the "App Store" option selected.
1.you want to test your App then use - Development provisioning profile.
2.test multiple users without interaction with APP store then use - Ad hoc distribution provisioning profile
2.multiple users interaction with APP store then use - App store distribution provisioning profile