LoginSignup
23

More than 5 years have passed since last update.

アプリ組み込みのWebビューによるGoogle OAuth認証リクエストが遮断されます

Last updated at Posted at 2016-09-02

ソース

※11/29追記
今更ですが日本語のページも見つけたのでリンクを置いておきます。
https://googledevjp.blogspot.jp/2016/09/modernizing-oauth-interactions-in-native-apps.html

概要

Googleが、アプリ組み込みのWebViewによるGoogleのOAuth認証を遮断することを発表しています。
これにより、以下のWebViewによるOAuth認証ができなくなります。

  • Android
    • WebView
  • iOS
    • UIWebView, WKWebView

安全かつシームレスな認証のため、OAuth認証はアプリごとではなくデバイスごとに行いたいという背景があるようです。

2016/10/20から、上記WebViewを使用したアプリの新規登録を禁止し、またWebViewを使用した既存アプリにてOAuthクライアント向けに通知を行うようになります。
2017/04/20から、上記WebViewによるGoogle OAuth認証が遮断されます。

近々アプリのリリースを考えている方は対応する必要がありそうです。

代替案

デバイスに入っているブラウザを使用する

アプリからデバイスに入っているブラウザを呼び出し、そのブラウザでOAuth認証を行います。
AndroidではChrome、iOSではMobileSafariと連携することになります。

ライブラリを使用する

Google Sign-In (Google公式)

AppAuth

Windows向けサンプル

デバイスのブラウザと連携しているWebViewを使用する

アプリ内でOAuth認証が完全にできなくなるのかというとそうではなく、デバイスの情報と連携する以下のWebViewを使用すればOAuth認証は可能のようです。
単にアプリ内でやるなという意図ではなく、デバイスごとにOAuth認証させたいという意図なのでしょうね。

  • Android
    • Chrome Custom Tabs(Chrome 45以降、Support Library ver23以降)
  • iOS
    • SFSafariViewController(iOS9以降)

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
23