Deprecating Facebook Login support on Android WebViews

Beginning October 5, 2021, Facebook Login will no longer support using Android embedded browsers (WebViews) for logging in users. To avoid a disrupted user experience, please use the following checklist to use Custom Tabs instead:

  1. Ensure that you have upgraded to version 8.2.0 or later of the Facebook SDK for Android.
    (If your app is built to target Android 11 (API level 30) and your users are on Android 11, alternative non-webview login mechanisms provided by the SDK will not work unless you upgrade to 8.2.0 or later.)
  2. Ensure that you are NOT setting LoginBehavior=WEB_VIEW_ONLY.
  3. Ensure that your app has configured support for Custom Tabs properly. (For more information on Custom Tabs, see the Custom Tabs documentation.) To test your configuration:
    1. Ensure that you have a browser compatible with Custom Tabs (example browsers that support Custom Tabs include Chrome, Samsung Browser, etc).
    2. Delete the Facebook app from your device if you have it installed. Login from your app. You should see a window open in the external browser rather than in a native WebDialog.
      WebViewCustom Tab
      If you do not see an external browser launch, follow these instructions:

      Option 1
      Ensure your app is using version 8.2.0 or later of the Facebook SDK for Android. If so, you should not need to make any modifications to your Android manifest. If you have any items referencing “CustomTabMainActivity” or “CustomTabActivity”, remove them.

      Option 2
      Configure your Custom Tabs intent filter exactly following the instructions in the "Edit Your Resources and Manifest" step of the Facebook Login for Android - Quickstart.

      Try Option 1 first and then use Option 2 if Option 1 does not work after testing. There may be cases where we cannot automatically configure your intent filter because of mismatches between the defined ${applicationId} constant and your package name.
  4. If you have already completed steps 1–3 and have released your app to users, users who are on older versions of your application will see the following error message when they attempt to login from a webview, prompting them to upgrade to the newest version of your application.

    If you have mechanisms to force auto-upgrades for existing installations of your application or to prompt your users to upgrade, we encourage you to use them to limit affected users.
  5. If your app is used primarily on devices which are unable to host the login experience in an external browser, we encourage you to integrate Device Login as an alternative login mechanism.