I have an IOS app currently being beta tested by a few people. I have a few more testers that I would like to add and distribute my beta app to. Can I simply add the devices and activate them in my distribution provisioning profile? Or do I need to download the updated profile and create a new archive with the updated device list?
If I do need to create a new archive, will the archives I sent the original testers still be valid or do they need the newly created one also? No code changes have been made.
You have to download the updated provisioning profile and rebuild the app using that profile.
An "Ad-hoc distribution profile" contains the list of allowed devices, and the app will
not install on other devices.
The previous version of the app continues to work on the devices that it was built for.
You need to add the new devices in the Provisioning Portal. Then add those devices to your Ad Hoc Distribution Provisioning Profile. You then have to download the provisioning profile and build an new archive with that profile. The previous archive is still valid and there is no impact to the previous testers.
The provisioning profile and application is installed on the users device user A and user B just have slightly differed versions. This is why I have automated setting CFBundleShortVersionString and CFBundleVersion as a build script. I display the version and build number in my about page. Also Crashlytics and TestFlight key off them.
What will kill all Ad Hoc builds you have in the field is deleting your certificate in the provisioning profile. But loosing your private key to the certificate would be a pain but not terminal. You would have to make a new one and recreate all you provisioning profiles and give new builds to all your testers. It will not effect your apps in the app store. Your distribution certificate is used by you to sign and certify your build. Apple then can know it really came from you they then remove your signing and resign it for the App Store.
My Check List
Add device in portal Edit TestFlight Distribution Profile
Add new devices
Delete old TestFlight Distribution Profile in the Xcode Organizer
Click refresh in the Xcode Organizer
Select TestFlight Distribution Profile in build setting
Commit project settings change from above step (committing increments my CFBundleVersion)
Build new archive
Up load to TestFlight
Notify / Authorize only the new devices / users
Related
I subscribed to the App Developer program. I paid the fee. I've done Certificates, Identifiers & Profiles. I added the app to App Store Connect.
xcode signing
I am getting the errors above. I don't have an iPhone phone. I'm developing on my macbook computer.
xcode device
How can I resolve this error?
As I can see in image that "Automatically Manage Signing" is enabled for this Xcode project. So Xcode is trying to create the provisioning profile for you but not able to create it.
B'coz you need to add account in Xcode from Xcode -> Preferences -> Account -> Click on + icon at bottom to add a new developer account.
You need to create provisioning profiles.
Once you have created provisioning profile, download it and install on your machine.
Please make sure the certificate used in cretation of the provisioning profile must be in your machine's keychain.
If those certificates not installed in your keychiain then you will see certificate issue in Xcode.
But I would recommend to create provisioning profile manually from apple developer portal as you can see and mainly you can know that which certificate and devices are used in the profile.
You can create following provisioning profiles for your app.
Development Profile
You will be able to run/debug app on real device.
The device must be added into the profile.
This can be used for only development purpose.
Adhoc Profile
You will be able to install app on real device but not able to debug it.
The device must be added in profile to install app on it.
It acts as a release build but not a actually release build.
Generally develop send the adhoc build to client for testing of app.
App Store Profile
You will not able to run app on device using this profile.
It will be used to upload app on App Store or create the release build for distribution on App Store.
I am confused with profiles and certificates for the build I am trying to put on the Appstore.
In developer.apple.com/ I have properly created both a developer and distribution certificate. they are both linked to the single app I have created.
I have registered my device (iphone)
I also have properly created 1 development provisioning profile and 1 distribution provisioning profile.
When I build with dev certificate + dev provisioning profile: app works fine on my device
But I know the build needs a distribution certif and provisioning profile in order to get approved on the appstore.
However when I build with distribution certificate + distribution provisioning profile, the build is succesful, but I can't launch the app on my iphone, other iphone (with http://www.diawi.com/ or iTunes). It immediately crashes with the infamous error popup: "unable to download. "XXX" could not be installed at this time".
When I look at the device's log from Xcode, it clearly states the crash comes from a profile issue.
Is the distribution build supposed to work on my iPhone?
You can check you Beta release build to your developer device using 'Apple Ad Hoc Distribution profile/certificat'. Here are Apple Dev link Beta Testing Your iOS App
No. A distribution build will not just be installable on your device. You are meant to submit it to iTunes Connect from Xcode, where you build it from an archive, or from Application Launcher where you would submit it as an IPA.
you should have created adhoc distributed provisioning profile and add your device to that profile.
But you need iTunes Connect to submit the app to App Store. This time you can create provisioning profile for app store.
Advantages of iTunesConnect.
1. You need not to add new device to the provisioning profile every
time you want to test the app in new device.
2. You can add as many as new test users to the app and can mark them as internal and external users.
3. You can upload as many builds as you want and test those builds.
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.
I was recently developing an iPhone application using Xcode. Now I want to install this app on my iPhone in order to test it.How can I do this? could you tell me please a step by step answer because I am new to this.
I have already created an account on the
iPhone Dev Center
now what is the next step?
As per Apple guidelines:
To test your app on a variety of devices and iOS versions, create a special distribution provisioning profile, called an ad hoc provisioning profile, and send it, along with the app, to testers. An ad hoc provisioning profile doesn’t require that testers be enrolled in an Apple Developer Program, be added to your team, create signing certificates, or use Xcode to run your app. Instead, app testers simply install the app and the ad hoc provisioning profile on their device to launch the app. You can then collect and analyse crash reports or logs from these testers to resolve problems before you ship your app.
Can I do what is mentioned here? and if yes how ?
go to memeber login area and login with your credential..
go to certificate , Identifiers & Profile tab
go to keychain access and create a .csr file and save it, it'll
required for creating certificates
create a certificate from certificate tab
create App Ids from identifier tab
Register your device UDID from Devices tab
Create distribution profile from Provisioning Profile tab and download & save it.
Install the Provisioning profile to your device and build your project using that profile.
Archive your project and create .ipa file
Final step: Install that .ipa file to your device.
Hope it'll help you. Happy Coding.....
With the free account you can not test/run apps on a device.
I'm confused as to how to add a provisioning profile to a new device. So I'm using Xcode 4.3.2, and TestFlight. I was given a pre-existing project and a team license via the company I'm helping out. The provisioning profile on developer.apple.com had certain devices already set up. So I added all these devices as testers to TestFlight, sent out an archived build, no problems, worked fine.
Now, one of the testers wants to try out testing on an iPad. So, I sent them an invite via TestFlight, and their device automatically registered on TestFlight. I see their UDID, and device, etc. However, their device is listed under "Teammates Devices Not On This Profile". So, I followed the prompts, exported the missing UDID to a file, and uploaded the file to the Provisioning Portal. I see the iPad now under "Devices" in the Provisioning Portal, however it is listed with 0 profiles associated. How to I associate the provisioning portal of this app with the iPad? Is there some simple step I'm missing? Keep in mind this iPad is in a foreign location, so I have no control over it. I need to tell them what they need to do (or automate it myself). Please help!
You need to add the device to the provisioning profile. Then, build the project again using the updated provisioning profile. And upload that build to test flight.
Or, I believe TestFlight has a new feature that allows you to simply update the build with the new profile without having to create a new build.