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