네, Rest API를 그 용도로 많이 사용합니다. 서버와 클라이언트 간에 통신을 할 때, 서버와 클라이언트가 지속적으로 연결된 상태가 아닌 해당 API의 호출시만 연결이 유지되는 이른바 statless(상태없음?)의 상태로 통신을 합니다. 물론 통신시에 서로에 대해 알 수 있도록 서버로부터 인증을 받은 후 헤더에 서버에서 발행한 토큰(eg. JWT)같은 것을 넘겨주는게 일반적입니다.
저장주기는 클라이언트가 필요한 시점에 Rest API를 호출하시면 됩니다. 다만 클라이언트의 인증이 필요할 경우는 클라이언트가 로그인 과정을 통해 서버로부터 Access Token이란 걸 받아서, 이걸 다음 통신시 부터 사용하면 됩니다. 그리고 Access Token은 요즘은 보통 JWT 란걸 사용하구요, 여기에는 유효기간이란게 존재하기 때문에, 유효기간이 지나서 들어오는 요청은 서버에서 거부하셔야 합니다. 만약 클라이언트가 Access Token을 지속적으로 사용하기 원하면 Refresh Token이란 걸 인증시에 발행해줄 수 있구요, 클라이언트에서는 Refresh Token을 이용해서 새로운 Token 을 서버로부터 발급받은 후에 계속 통신을 수행할 수 있습니다. 서버 클라이언트 인증 방식으로 많이 사용되는 표준적인 방식은 OAuth2로 불리는 방법입니다. 구글, 페이스북 등등 우리가 아는 아주 많은 회사들이 이 방법을 채용하고 있습니다.
안드로이드에서는 보통 Retrofit또는 Retrofit + OkHttp 를 Rest API 라이브러로 많이 사용하고, 통신 포맷은 대부분은 JSON을 사용하며, Gson이나 Moshi를 주로 사용합니다. Retrofit + Gson 조합만으로도 많은 코드없이 Rest API를 쉽게 핸들링할 수 있어요.