Ad hoc distribution add new device - ios

I am trying to publish my app using ad hoc. And i was thinking about the 100 devices limitation.
Let's say I published my app for 20 users for example. And after some time a new user asks for my app.
What is the correct way to add him ?
-- If it's creating a new profile :
If I create a new ad hoc profile, what is gonna happen to the users using the old profile, will the app using the old profile stops working for them or what exactly?
what about the limitation if the app will keep working, does that mean that we can create infinite ad hoc profiles and keep adding devices?

It won't affect the users with old profile.
Just add your new device and then go to your ad hoc profile and select all devices or the newly added device and then click generate and download and install the profile by double clicking it and do the routine [i.e., build & archive] again.
Steps:
1. Add the new UDID in Devices.
2. Select the Team Provisioning profile in Provisioning Profiles[i.e., Adhoc profile in your case].
3. Click the Edit button.
4. And under devices for that provisioning profile, click Select All, or just the devices you want included.
5. Click Generate.
Sometimes it takes a while before the certificate is updated and fetched from XCode.

Related

Manually create provisioning profile in Xcode

I have a simple goal I would like to achieve, manually create a provisioning profile in Xcode.
So, I was trying to use the Pythonista Template in Xcode, and I wanted to flash it to one of my devices so that I could test it on a real device and not just the iOS simulator.
So I enter in what I want the app ID to be, and it says, No profiles for 'com.cartercoding.getnpostserver' were found. So I need to manually create a provisioning profile for it, which I have looked up, but the answers I have found are not relevant.
I am using Xcode 11, stable release.
I don't really know what a provisioning profile does...
A provisioning profile grants permission for one or more iOS devices to run an app signed with a specific certificate. Normally, an iOS device will only run apps that are signed by Apple; a provisioning profile tells the device that it may also run apps signed with a key corresponding to the certificate specified in the profile.
I am trying to put an app that I downloaded from the internet on my phone, so I can't do it the usual way.
The whole iOS code signing infrastructure is designed to prevent you from doing that. Short of jailbreaking your device (which is a whole other conversation) you can't just install an app that you've downloaded onto your phone.
I have a simple goal I would like to achieve, manually create a provisioning profile in Xcode.
You can't create a provisioning profile "manually," if by that you mean to construct one on your own; you have to get one from Apple (whether that's automatically through Xcode or via the developer portal).
For users who need to manually create a provisioning profile (in some companies every app has to have its own provisioning profile)
Sign in to your Apple Developer account and navigate to Certificates, IDs & Profiles > Identifiers > Provisioning Profiles.
https://developer.apple.com/account/ios/profile/production
Add a new provisioning profile.
Activate App Store.
Click Continue.
From the dropdown menu, select the app ID you just created.
Click Continue.
Select the certificate you just created.
Click Continue.
Fill in a name of your choice. The name is not visible to end users.
Click Generate.
Download the provisioning profile.
Click Done.
The provisioning profiles overview with your new provisioning profile is displayed.
If you need a Provisioning Profile of Type Ad Hoc
Is everything the same except point 3
These instructions were copied from this page
https://support.staffbase.com/hc/en-us/articles/115003598691-Creating-the-iOS-Provisioning-Profiles

Does adding a new device to Apple Developer account make it available to every app?

I want to add a new device to my list of devices under "All" in Devices category in Apple Developer website in order to have that person download and install an app of mine for testing.
I did a test run of uploading the .IPA file of a different app to Diawi with the devices as they currently are in my list of devices so without adding this new one, and all three devices showed up in list of provisioned devices. I had not added them specifically to the app ID, it was just an app I created on the fly for testing which was associated with my own developer account.
Now, I am just wondering, if I add the UDID of another tester under "All devices" and then proceed to add it to the distribution profile of my app, if they would then stay in the default list for future apps?
I really don't know how this works - would really appreciate if someone can help me out on this part.
Assuming it is a standard development provisioning profile (and not an enterprise distribution profile), this is how it works.
One of the things inside of the provisioning profile is a list of devices on which apps that apps matching the bundle ID (also specified in the provisioning profile) can run. So if you have a new device, you need to add it to the apple developer account, then add it to the provisioning profile you are using to build the app, re-download the profile to your Mac, then re-build the app. The new app will have bundled with it the new list of devices on which the app is authorized to run. Then give the new app to the person with the new device and it should now work for them.
If you try to run the old app, which has a profile that doesn't list the new device's UDID, the app will not run. Also, simply adding a new device to the list of devices does not automatically add it to any provisioning profiles. You must then go and edit the profile to choose to include the new device. Then, once you've done both of those, you must download the profile and then rebuild the app, now packaged with the new profile that includes the new UDID.

synching a team provisioning profile to an iPhone

I have a test version of an app on my phone which has stopped working last week when its team provisioning profile expired. The profile is now update in Xcode and on the developer portal but not yet on the phone. Is there any way of forcing an update on the phone which our reinstalling the app and overwriting its [slightly changed Core Data] data store?
If you've set up your core data version correctly, it should not overwrite the data store. If you are currently developing it, and the core data data store version hasn't been incremented, can you not increment the version to force iOS to migrate the data to the new structure?
Barring that, you have 2 or 3 options to install it, depending on how the profile is set up.
If you are using a wildcard app ID in your provisioning profile, you can get the new version onto the phone by simply creating a new dummy app (or use one of Apple's sample apps) and sign it with the new profile / cert. This will get the new profile onto the device without touching the existing app (just make sure you don't use the same bundle ID for the dummy app.
If you have an explicit app ID, you can try to add the provisioning profile manually through the Xcode Devices window. Right click on the device on the left and select "Show provisioning profiles..." In the window with the provisioning profiles, click the little "+" below the list, browse to your provisioning profile and open it. If it is valid for the device, it will get added on the device.
Finally, if you have MDM (Mobile Device Management) managing the device, you can use that to push the profile to the device.
Once you get the profile on the device, you should be able to run the app again.
Unfortunately, Apple no longer allows you to simply email the provisioning profile to the email account on the device and let the user open it. I believe starting with iOS 8 you haven't been able to do that and you need to install it either with an app, through Xcode, or with MDM.

Not able to give build permission to device on TestFlight

I want to give build permission to a particular device on TestFlight.
I have added that device on developer.apple.com and also added to provisioning profile I have uploaded to TestFlight. Also I have uploaded that profile to TestFlight.
I am able to add all other devices but not this particular device. On TestFlight it shows this device under Teammate devices not on this profile section. It does not show check box i.e. I can't add this device to build. :
How can I solve it?
Update : Below is what I tried but did not work unfortunately.
Created a new adhoc profile.
Removed all Xcode profiles and refreshed them to have newly created profile in Xcode.
Set Build Settings->Code signing identity->Provisioning profile to this new ad hoc profile.
Created .ipa signed with new profile and uploaded build to TestFlight.
Uploaded new profile to TestFlight.
Create a new profile on Apple's dev site. Name it something DIFFERENT from the current name. I usually append the date to mine so I KNOW which is which. Then, make sure you select the new one when building. If you have multiples with the same name it's a guessing game as to which one Xcode will choose when building your app. #rckoenes is correct - the UDID is NOT in the profile that is in the app that you uploaded to TestFlight. Using unique names will help alleviate this problem.
Add device UDID to devices on developer.apple.com then recreate developer provisioning profile and download it.After open it choose provisioning profile in XCode->targets->CodeSigning.Archive project and upload it to testFlight.

How do you add a new device to an ad hoc distribution profile?

I've added some new devices to the development portal and want to be able to send them an ad-hoc distribution for installation via iTunes.
However I can't see anywhere on portal website where devices can be added to the ad-hoc profile.
I've tried refreshing the profiles via XCode, and that added the new devices to other profiles but it didn't add them to the ad-hoc profile.
There's an "Edit" button on the right side of your Ad-hoc profile listing, click that and use the checkboxes to select the devices you want on this profile.
Try this:
Log into the provisioning portal at http://developer.apple.com/ios/manage/provisioningprofiles/index.action
Go to distribution tab.
Find your ad-hoc provisioning profile
Hit edit.
Tick the new device in the list thats shown (or choose 'select all').
Profile will say pending.
wait a few seconds, reload.
Download and install new profile.

Resources