Wireguard comes with an example script [1] that does DNS updates for peers, which works well for me in a cron job. Archwiki also has an example for systemd timers [2]. But if your question is specifically about phones, then this might get a bit more complicated to set up.
[1] https://git.zx2c4.com/WireGuard/tree/contrib/examples/rereso...
[2] https://wiki.archlinux.org/index.php/WireGuard#Endpoint_with...