OAuth2のプロバイダーとして外部サービス経由で登録されたユーザに、トークンを発行するには
ウェブサービスにOAuth2プロバイダーの機能を実装し、ネイティブアプリのAPI使用認可にOAuth2を利用したい。
ResourceOwnerPasswordcredentialsフローを使ってaccess_tokenを発行することが可能ですが、
このウェブサービスではFacebookやTwitterのアカウントを使った登録が可能であり、
ID/PWを所持していないユーザが存在します。
Implicitフローではrefresh_tokenの発行が出来ないため、利用しづらいと考えています。
この場合、AuthorizationCodeフローを使った方法でaccess_tokenを得るのが正しいのでしょうか?
ネイティブアプリではSafariやChromeを経由してしまうと、UXを著しく損なうため、より良い方法があれば教えてください。