Strange… well you could also replace run by build alias deployIOS="cordova clean && ionic build ios --device && .. because run does a build an then a deploy internally.
Another strange behavior I experienced sometimes was that ionic run ios --device quits after the build without deploying to the phone and when I run it a second time it builds and deploys…
Ok what I initially did are the following steps which work for me, although I do not like the fact that I have to register each new phone at the Provisioning Profile:
Connect Phone to my Mac and Sync Xcode with my Developer Account so that the name of my phone appears in the Provisioning Profile Section.
Select the phone and download the profile.
Copy the Provisioning Profiles (found on stackoverflow): sudo cp -r ~/Library/MobileDevice/ /Library/MobileDevice/(but I do not know if it is really necessary. I am still learning how this Apple process works, maybe u know more…)