IOS unable to find facebookAppId during facebook login

Hello Expo team !

I’am currently using sdk 32

I have implemented a facebook login working great on both IOS and Android ( on expo).
As soon as I am using the IOS standalone version there is no behavior working except the web one.

The login works perfectly on Android (any behavior),** but I keep having the following error message on IOS

Try to perform Facebook login with behavior ‘’, but no facebook app id was provided. Specify Facebook app id in app.json or switch to “web” behavior

It’s seems that on IOS the login is not reading the appId from the logInWithReadPermissionsAsync() params … So I guess it s reading it from app.json, but I specified it…

I tried with native,system, browser

Web behavior works on IOS standalone but I suppose it is because it does not require the facebookappid

The IOS i’am testing on an IOS with version >11

{
  "expo": {
    "name": "MyApp",
    "icon": "./src/assets/images/logo-app.png",
    "version": "1.0.29",
    "slug": "my-app-slug",
    "description": "",
    "privacy": "public",
    "sdkVersion": "32.0.0",
    "orientation": "portrait",
    "primaryColor": "#fff",
    "facebookScheme": "fb318850582360167",
    "facebookAppId": "318850582360167",
    "facebookDisplayName": "MyApp",
    "packagerOpts": {
      "assetExts": [
        "ttf",
        "mp4"
      ],
      "sourceExts": [
        "ts",
        "tsx"
      ],
      "transformer": "node_modules/react-native-typescript-transformer/index.js"
    },
    "ios": {
      "bundleIdentifier": "com.skyrune.myapp",
      "appStoreUrl": "https://itunes.apple.com/app/peps-un-bar-une-promo/id1463105178",
      "infoPlist": {
        "UIBackgroundModes": [
          "location"
        ],
        "NSLocationWhenInUseUsageDescription": "We are asking for your location for blabla",
        "LSApplicationQueriesSchemes": [
          "fbapi",
          "fb-messenger-share-api",
          "fbauth2",
          "fbshareextension"
        ]
      }
    },
    "android": {
      "package": "com.skyrune.myapp",
      "versionCode": 29,
      "permissions": [
        "LOCATION",
        "ACCESS_COARSE_LOCATION",
        "ACCESS_FINE_LOCATION",
        "READ_INTERNAL_STORAGE",
        "WRITE_INTERNAL_STORAGE",
        "READ_EXTERNAL_STORAGE",
        "WRITE_EXTERNAL_STORAGE"
      ],
      "playStoreUrl": "https://play.google.com/store/apps/details?id=com.skyrune.myapp"
    },
    "splash": {
      "image": "./src/assets/images/splash.png",
      "backgroundColor": "#262637",
      "resizeMode": "contain"
    },
    "platforms": [
      "android",
      "ios"
    ]
  }
}

Do I need more than setting my BundleId in the facebook dev console ? ( in the IOS section)
Here is the standalone IOS config on facebook developer console

Thank you for your help !!

Hey @thikondrius,

Just to be certain, are you passing the appID as an argument in logInWithReadPermissionsAsync?

Cheers,
Adam

Hello Adam thank you for your time.
Yes I am sending the facebookAppId ! That is probably why it’s working on Android.

Facebook.logInWithReadPermissionsAsync("318850582360167", {
            permissions: ["public_profile", 'email'],
            behavior:  "native" // going in the catch with browser,native and system
        })
            .then((fbResponse: any) => {
                if (fbResponse.type === "success") {
                    alert(fbResponse.token)
              }
            })
           .catch(err => alert(err))  // ON IOS going all the time here with the message saying it can not find the facebook app id

Here is the screen shot on IOS

Here is the screen shot on Android

Additionnal info : With EXPO client, it works perfectly both on IOS and Android. (when using expo bundle, hashes etc… on the facebook dev console). The bug exist only on the standalone

Nobody ?

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.