p***@toursforfun.cn
p***@toursforfun.cn
  • 发布:2024-01-18 10:16
  • 更新:2024-03-04 14:59
  • 阅读:150

【报Bug】 manifest 配置好了 Facebook 登录,Ios 正常使用登录成功,但是安卓端连 facebook provider 都没有,所以 uni.login 直接报错

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 11

HBuilderX类型: 正式

HBuilderX版本号: 3.99

手机系统: Android

手机系统版本号: Android 13

手机厂商: realme

手机机型: realme GT2

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
uni.login({  
    provider: 'facebook',  
    success: function (loginRes) {  
        // 登录成功  
        uni.getUserInfo({  
            provider: 'facebook',  
            success: function(info) {  
                // 获取用户信息成功, info.authResult保存用户信息  
            }  
        })  
    },  
    fail: function (err) {  
        // 登录授权失败  
        // err.code是错误码  
    }  
});

安卓端提示 login:fail provider not find

操作步骤:
uni.getProvider({  
    service: 'oauth',  
    success: function (res) {  
        console.log(res.provider)  
    }  
});

manifest 文件已经勾选了 Facebook 登录,但是打印结果中没有 facebook 所以 uni.login 直接 报错

预期结果:

文档:
配置并打包后,通过uni.getProvider可以得到配置的结果列表,注意这里返回的是manifest配置的,与手机端是否安装微信、QQ、微博无关。

实际结果:

manifest 文件已经勾选了 Facebook 登录,但是打印结果中没有 facebook 所以 uni.login 直接 报错

bug描述:

faceBook 登录:

ios 端:可以正常使用

安卓端无法唤起facebook登录,自定义基座提示 login:fail provider not find

如果使用标准基座,依然没有 facebook 信息

plus.oauth.getServices(function(services) {  
    console.log(services)  
}, function(err) {  
    // 获取 services 失败  
})  

// 打印结果如下  
[  
    {  
        "id": "univerify",  
        "description": "一键登录",  
        "nativeClient": true,  
        "authResult": null,  
        "userInfo": null  
    },  
    {  
        "id": "weixin",  
        "description": "微信",  
        "nativeClient": false,  
        "authResult": null,  
        "userInfo": null  
    },  
    {  
        "id": "qq",  
        "description": "QQ",  
        "nativeClient": true,  
        "authResult": null,  
        "userInfo": null  
    },  
    {  
        "id": "sinaweibo",  
        "description": "新浪微博",  
        "nativeClient": false,  
        "authResult": null,  
        "userInfo": null  
    },  
    {  
        "id": "google",  
        "description": "Google",  
        "nativeClient": true,  
        "authResult": null,  
        "userInfo": null  
    }  
]

Facebook 登录都是勾选、配置好了的,而且 ios 端没有问题

2024-01-18 10:16 负责人:无 分享
已邀请:
healerFac

healerFac

我也是 您那个facebook 如何开启"public_profile"以及"email"的访问权限 我这个公司验证一直不通过

  • p***@toursforfun.cn (作者)

    我们这个项目很早就配置好了,我还没要到公司开发者账号。昨天才发现 facebook 登录点击没有反应,安卓 两种基座都是点击就提示 login:fail provider not find 。安卓端才跑到 uni.login 这就报错了

    2024-01-18 12:08

healerFac

healerFac

我打的自定义基座 然后用的模拟器 下载了facebook app 但是提示

p***@toursforfun.cn

p***@toursforfun.cn (作者)

已解决,目前标准基座无法体验 Facebook 登录
自定义基座 manifest 文件 facebook 登录之前可以不配置 client_token,文档示例图也只配置了appid , 现在把 client_token 配置后可以唤起 facebook 登录

h***@163.com

h***@163.com

IOS 无法调起
uni.getUserInfo({
provider: 'facebook',
success: function(info) {
// 获取用户信息成功, info.authResult保存用户信息
}
})

安卓正常、头像和名字均可获取,IOS则无任何反应

要回复问题请先登录注册