Detect if iOS Build is Development, Ad-Hoc, or AppStore at Runtime

For the purposes of something like Push Notifications, it is helpful to know what type of provisioning profile the app that is running has been signed with.

For example, I might test “Debug” builds locally through XCode, or I might send that build through Testflight with an Ad-Hoc profile. So far, I haven’t found a way in Unity to automatically detect this so that I can send push notification tokens to my server with the correct “Sandbox/Not Sandbox” flag (Ad-Hoc and App Store builds don’t use sandbox, Development does).

Has anyone had any luck with detecting this through Unity? I believe at least it might be possible if I write a plugin, but that seems a bit like overkill if it can be avoided.

EDIT: I might add that I currently use a solution where I just check a boolean in App-Store/Ad-Hoc builds to signify that it is not in Sandbox mode. This works fine, but is not a very robust solution. It is also prone to error, since the check of whether I should use Sandbox or not isn’t really the boolean, it is what type of profile I’m using.

You can use Application.installMode