Flutter 1.22.5集成flutter_facebook_login 3.0.0登录报错求助
解决Flutter 1.22.5 + flutter_facebook_login:3.0.0 登录报错"App not active"的方案
检查Facebook开发者后台应用状态
登录Facebook for Developers找到你的应用,确认状态是「Live(已上线)」。如果处于「In Development(开发中)」,只有添加到「测试用户」列表的账号能登录,普通账号会触发该报错。
若要开放给普通用户,需完成应用基本信息填写(隐私政策URL、联系方式等)并提交审核,通过后切换为Live状态。配置测试用户(开发阶段)
不想上线的话,确保测试账号已添加到应用的「测试用户」或「角色」中(比如开发者、测试员)。路径:Facebook开发者后台 → 目标应用 → Roles → 测试用户/人员,添加对应账号。验证应用ID与签名配置
- Android端:检查
android/app/src/main/AndroidManifest.xml里的meta-data标签,确保com.facebook.sdk.ApplicationId和Facebook后台应用ID完全一致;同时确认strings.xml里的facebook_app_id正确。 - iOS端:检查
Info.plist里的FacebookAppID和CFBundleURLSchemes(格式为fb{你的应用ID})是否和后台配置一致。
- Android端:检查
核对Facebook登录权限配置
在Facebook开发者后台进入目标应用 → Products → Facebook Login → Settings,确保「Client OAuth Settings」里的「Valid OAuth Redirect URIs」配置正确:- Android:填写
fb{你的应用ID}://authorize - iOS:填写
fb{你的应用ID}://authorize
同时开启「Login with the Facebook app」和「Embedded Browser OAuth Login」选项。
- Android:填写
清理缓存并重新构建项目
执行以下命令清理旧配置残留:flutter clean flutter pub get # Android额外清理 cd android && ./gradlew clean && cd .. # iOS额外清理 cd ios && pod deintegrate && pod install && cd ..调整设备端登录方式
如果测试设备装了Facebook官方应用,确保登录账号是已配置的测试用户;或者强制使用WebView登录,避免调用原生应用:final result = await FacebookLogin().logIn( ['public_profile', 'email'], loginBehavior: FacebookLoginBehavior.webOnly, );
内容的提问来源于stack exchange,提问作者Khyati Modi
相关产品推荐
相关产品推荐

