Mobile devices aren't considered a confidential client, meaning it cannot store secrets. In the OAuth2 case, it means that refresh token and consumer secret should not be stored on the device. Hence, once the access token is expired it's impossible to refresh it and the user is requested to login again.
Is there a way to persist a long user session other then generating a long-lived access token? Isn't it bad practice to have a long-lived access token in the first place?