darwin-morocho / flutter-facebook-auth

A flutter plugin to add login with facebook in your flutter app
193 stars 127 forks source link

Login on iOS (14.2) opens a web view dialog instead of the Facebook app #139

Closed magnuswikhog closed 2 years ago

magnuswikhog commented 2 years ago

I'm not a regular iOS user, so I'm not sure if this is a bug or if this is the way it's supposed to work on iOS.

I'm using version ^3.3.3-no-nullsafety of the plugin because I haven't migrated my project to null safety.

The login is working, but I always get the web view dialog on iOS (only tested with iOS 14.2). On Android, it opens the a "native" Facebook dialog and lets me login with a single click. On iOS I have to type my password in the web view even though I'm already logged into the Facebook app, which kind of defeats a big part of the UX-purpose of providing a social login.

After installing some "big name" apps, it seems that even they use the web view when logging in with Facebook, so maybe this is just how Apple wants it to work? Would be great if someone could clarify, as the LoginBehavior flags doesn't seem to do anything on iOS.

darwin-morocho commented 2 years ago

I am not sure but maybe you can use this version flutter_facebook_auth: ^3.5.0 in a no null safety project. let me know if the problem persists

kevindaizj commented 2 years ago

@darwin-morocho same issue with flutter_facebook_auth: 3.5.0 and 3.5.1 on iOS 12.4.1

info.plist:

  <key>CFBundleURLTypes</key>
    <array>
      <dict>
        <key>CFBundleURLSchemes</key>
        <array>
          <string>fb**********</string>
        </array>
      </dict>
    </array>
    <key>FacebookAppID</key>
    <string>53**********</string>
    <key>FacebookDisplayName</key>
    <string>m_***********</string>
    <key>LSApplicationQueriesSchemes</key>
    <array>
      <string>fbapi</string>
      <string>fbapi</string>
      <string>fbapi20130214</string>
      <string>fbapi20130410</string>
      <string>fbapi20130702</string>
      <string>fbapi20131010</string>
      <string>fbapi20131219</string>
      <string>fbapi20140410</string>
      <string>fbapi20140116</string>
      <string>fbapi20150313</string>
      <string>fbapi20150629</string>
      <string>fbapi20160328</string>
      <string>fb-messenger-share-api</string>
      <string>fbauth2</string>
      <string>fbshareextension</string>
    </array>
darwin-morocho commented 2 years ago

@darwin-morocho same issue with flutter_facebook_auth: 3.5.0 and 3.5.1 on iOS 12.4.1

info.plist:

  <key>CFBundleURLTypes</key>
    <array>
      <dict>
        <key>CFBundleURLSchemes</key>
        <array>
          <string>fb**********</string>
        </array>
      </dict>
    </array>
    <key>FacebookAppID</key>
    <string>53**********</string>
    <key>FacebookDisplayName</key>
    <string>m_***********</string>
    <key>LSApplicationQueriesSchemes</key>
    <array>
      <string>fbapi</string>
      <string>fbapi</string>
      <string>fbapi20130214</string>
      <string>fbapi20130410</string>
      <string>fbapi20130702</string>
      <string>fbapi20131010</string>
      <string>fbapi20131219</string>
      <string>fbapi20140410</string>
      <string>fbapi20140116</string>
      <string>fbapi20150313</string>
      <string>fbapi20150629</string>
      <string>fbapi20160328</string>
      <string>fb-messenger-share-api</string>
      <string>fbauth2</string>
      <string>fbshareextension</string>
    </array>

if you have a the facebook app installed this plugin should open a webview that redirects to the facebook app

kevindaizj commented 2 years ago

@darwin-morocho same issue with flutter_facebook_auth: 3.5.0 and 3.5.1 on iOS 12.4.1

info.plist:

 <key>CFBundleURLTypes</key>
    <array>
      <dict>
       <key>CFBundleURLSchemes</key>
        <array>
          <string>fb**********</string>
       </array>
      </dict>
    </array>
   <key>FacebookAppID</key>
    <string>53**********</string>
    <key>FacebookDisplayName</key>
    <string>m_***********</string>
    <key>LSApplicationQueriesSchemes</key>
    <array>
      <string>fbapi</string>
      <string>fbapi</string>
      <string>fbapi20130214</string>
      <string>fbapi20130410</string>
      <string>fbapi20130702</string>
      <string>fbapi20131010</string>
      <string>fbapi20131219</string>
      <string>fbapi20140410</string>
      <string>fbapi20140116</string>
      <string>fbapi20150313</string>
      <string>fbapi20150629</string>
      <string>fbapi20160328</string>
      <string>fb-messenger-share-api</string>
      <string>fbauth2</string>
      <string>fbshareextension</string>
    </array>

if you have a the facebook app installed this plugin should open a webview that redirects to the facebook app

No. The plugin opened a webview that redirects to facebook.com.

image

darwin-morocho commented 2 years ago

@darwin-morocho

same issue with flutter_facebook_auth: 3.5.0 and 3.5.1 on iOS 12.4.1

info.plist:

CFBundleURLTypes

<array>
  <dict>
    <key>CFBundleURLSchemes</key>
    <array>
      <string>fb**********</string>
    </array>
  </dict>
</array>
<key>FacebookAppID</key>
<string>53**********</string>
<key>FacebookDisplayName</key>
<string>m_***********</string>
<key>LSApplicationQueriesSchemes</key>
<array>
  <string>fbapi</string>
  <string>fbapi</string>
  <string>fbapi20130214</string>
  <string>fbapi20130410</string>
  <string>fbapi20130702</string>
  <string>fbapi20131010</string>
  <string>fbapi20131219</string>
  <string>fbapi20140410</string>
  <string>fbapi20140116</string>
  <string>fbapi20150313</string>
  <string>fbapi20150629</string>
  <string>fbapi20160328</string>
  <string>fb-messenger-share-api</string>
  <string>fbauth2</string>
  <string>fbshareextension</string>
</array>

if you have a the facebook app installed this plugin should open a webview that redirects to the facebook app

No. The plugin opened a webview that redirects to facebook.com.

image

try to update your ios version or use another real ios device

kevindaizj commented 2 years ago

try to update your ios version or use another real ios device

I tried with iPhone 7. And yes, I will give it a try with newer iOS.

kevindaizj commented 2 years ago

@darwin-morocho I have tried with iOS 14.7.1 (newest iOS) , real device.
Nothing changed. The plugin still open a webview that redirects to facebook.com instead of launching Facebook App.

darwin-morocho commented 2 years ago

@darwin-morocho I have tried with iOS 14.7.1 (newest iOS) , real device. Nothing changed. The plugin still open a webview that redirects to facebook.com instead of launching Facebook App.

I've tested with my iPhone x with iOS 14.6 and it works perfect.

jaredgreener commented 2 years ago

Same issue on iPhone 12 Pro on iOS 14.7.1

darwin-morocho commented 2 years ago

Same issue on iPhone 12 Pro on iOS 14.7.1

Sorry but i could not reproduce it. it seems a bug of the Facebook sdk on iOS please go to the oficial Facebook sdk repository on iOS and open an issue there

darwin-morocho commented 2 years ago

here a demo using my iPhone x with ios 14.7.1

https://user-images.githubusercontent.com/15864336/133078027-eb2efd1c-d05b-42ae-b674-fff3d5c0184c.MP4