Get ( PersistentID ) has been shown to not be reliable. Especially on iOS. Reinstalling FM GO can return a new ID. There are also issues with Windows returning a hashed ID that is the equal of a hash of nothing.
I think you will find that this is expected behaviour.
A couple of years ago, Apple prohibited access to device specific numbers to protect the user's privacy. So the PersistentID was changed to derive from an installation code used by FM Go on each device. So it is expected that your iOS app would have a different PersistentID. It's unlikely that FMI will drop either.
I have not seen the same problems as some others have—like Joshua reported above.
Joshua, I have never had these users have problems with the PersistentIDs in FMGo.
Jade, So the 'installation code' in FMGo14 must be different to the one in the FIAS engine.
Uninstalling the app or FM Go and reinstalling will result in a new ID.
The reason you haven't seen the problems is because the users haven't uninstalled the app. That would be my guess. It's just a matter of time. Linking access to a device is, in my opinion, going to generate a log of extra work for you. And trying to address that extra workload, can open up a security gap for you.
On another note, it is not very difficult to circumvent your script that checks the ID and boots you out.
I accept your point that deleting FMGo creates another PersistentID. I just tried that twice and I got a different ID each time. This is not the case though with the FIAS versions. When I generate new xcode builds and reinstalling them on the mobile device it always returns the same PersistentID.
Good info to have. Thanks.