2FA google authenticator actually uses a seed value to generate the 2fa. If you write those down and treat them like bitcoin private keys, you will be able to recover from a lost or broken phone.
SMS If you keep the same phone number while changing phones then the messages would simply go to your new phone.