集成飞书登录的 3 个步骤
  • 在飞书开放平台注册并且配置应用
  • 在 Authing 管理控制台配置应用
  • 集成 Android SDK

STEP 1 :在飞书开放平台 (opens new window)注册并且配置应用

  1. 获取 AppId 和 AppSecret
  2. 设置 Android 应用信息(请务必打开飞书登录)

STEP 2 :在 Authing 管理控制台 (opens new window)配置应用

  1. 选择或者创建一个用户池—>身份源管理—>企业身份源—>创建企业身份源
  2. 填写配置信息 登录方式:飞书开放平台注册的应用类型 唯一标志性:自定义 显示名称:自定义 AppId:飞书开放平台注册的应用 AppId AppSecret:飞书开放平台注册的应用 AppSecret

STEP 3 :集成 Android SDK

  1. 设置依赖
implementation files ('libs/larksso-3.0.8.aar')
implementation 'com.alibaba:fastjson:1.1.58.android'
Guard 只是 compileOnly 依赖飞书,这样可以让 App 按需引入,防止 Guard aar 包随着支持的第三方登录增加而越来越大。所以每增加一个第三方身份源,都需要 App 手动加上该身份源的依赖
  1. 在应用启动时初始化 Authing
// appId 是 authing 的应用 id,可以在 authing 控制台里面获取
Authing.init(context, appId);
通过以上 3 步即可简单快速的通过 Authing 管理控制台配置后自动获取飞书身份源,登录入口会在 Guard 内置登录界面的社会化登录按钮列表中体现
  • 接下来,如果 Use 我们提供的飞书登录按钮,则在布局文件里面加上(或者代码初始化添加)
<cn.authing.guard.social.LarkLoginButton
    android:id="@+id/btn_lark_login"
    android:layout_width="48dp"
    android:layout_height="48dp" />
然后在 java 代码里面处理事件
LarkLoginButton button = findViewById(R.id.btn_lark_login);
button.setOnLoginListener((ok, data) -> {
    if (ok) {
        // 登录成功,data 是用户信息
    } else {
        // 登录失败
    }
});
  • 如果不想 Use 我们内置的按钮,则可以在自己按钮的点击事件里面调用 Authing 飞书登录 API
Lark.login(appContext, ((ok, data) -> {
    if (ok) {
        // 登录成功,data 是用户信息
    } else {
        // 登录失败
    }
}));
  • 如果想完全自己实现飞书登录,拿到授权码后,可以调用下面 API 换取 Authing 用户信息
public static void loginByLark(String authCode, @NotNull AuthCallback<UserInfo> callback)
参数
  • authCode 飞书授权码
示例
AuthClient.loginByLark(authCode, (code, message, userInfo)->{
    if (code == 200) {
        // userInfo:用户信息
    }
});
Logo

Authing 是一款以开发者为中心的全场景身份云产品,集成了所有主流身份认证协议,为企业和开发者提供完善安全的用户认证和访问管理服务

更多推荐