The Android keystore system and iOS secure enclave can generate and store key pairs in the device for the app.
But how persistent are those key pairs? Will they be destroyed when the user unistalls the app? Are they transferred when the user changes their device?
Are they backed up into an iOS or Android specific server?