# 应用申请

请知音楼联系冯照鹏老师(工号:098003)申请创建应用,申请创建应用时,需要您提供以下信息,请提前准备:

  • APP 名称
  • 描述
    • 应用的使用场景
  • APP 图标
    • 尺寸 200x200
  • 跳转到您 APP 的 Scheme
    • 例如:yach://

应用创建完成后,您将获得您 APP 对应的 AppID 和 AppSecret,请妥善保管。

# 授权流程

授权登录简要流程如下:

  1. APP 端发起知音楼授权登录操作,将唤起知音楼,用户在知音楼中授权登录完成后,将会跳转回您的 APP,并携带临时票据 Code。
  2. 使用临时票据 Code、AppID、AppSecret 作为参数,直接调用 Yach 开放平台后端接口,换取 access_token、openId(用户唯一标识)。
  3. 使用 access_token、openId 作为参数,直接调用 Yach 开放平台后端接口,获取用户信息,用户信息包含用户头像、昵称、工号等。

简而言之,在移动端集成 SDK,授权登录成功后将获得临时票据 Code。然后自行调用 Yach 开放平台后端接口获取用户信息。

温馨提示:

  • 为了避免因 AppSecret、access_token 泄露导致的不必要损失,建议您将这些敏感信息放到后端,由您 APP 自己后端接口中转调用。
  • 如果用户手机没有安装知音楼 APP 或者知音楼 APP 版本过低,这时您若通过移动端 SDK 发起授权登录,默认会自动跳转到知音楼下载页或更新页,您也可以关闭这个自动跳转动作。

完整时序图:

图片

# Yach 授权登录移动端 SDK

Android 授权登录接入指引

iOS 授权登录接入指引

鉴于 iOS AppStore 上线审核较严,iOS 授权登录 SDK 还开放了判断是否安装知音楼、知音楼版本是否支持授权登录、获取 iOS 知音楼下载链接等 API,便于您更灵活应对 AppStore 审核。

# Yach 授权登录后端接口

https://yach-open-doc.zhiyinlou.com/server-api/oauth/授权登录第三方应用.html#授权登录第三方应用 (opens new window)

# SSO 登录文档

https://doc-openapi.zhiyinlou.com/docs/zws/sso/scenes (opens new window)

SSO 登录提供了 H5 的登录页面,如果您的 APP 要同时接入 Yach 授权登录和 SSO 授权登录,我们建议您在 APP 中做个原生登录页,提供给用户两种登录方式的按钮入口。

如果用户手机没有安装知音楼 APP 或者知音楼 APP 版本过低,这时您若通过移动端 SDK 发起授权登录,默认会自动跳转到知音楼下载页或更新页,所以,您可以不用再处理用户未安装知音楼或版本过低情况,当然您也可以关闭这个自动跳转动作。

# Q&A

# 1、为什么跳转到知音楼之后,点击“授权并登录”按钮或“取消”按钮没有跳转回自己 APP?

跳转不回自己的 APP,很可能是 APP 没有配置 scheme,需要保证在知音楼注册的 scheme 已经在自己 APP 里配置过了,可以使用手机系统浏览器验证,如果系统浏览器打开 scheme 能跳转到自己 APP,说明 scheme 没有问题。

# 2、为什么在跳转到知音楼请求授权后,知音楼内打开了一下空白页面就自动跳转回自己 APP 了,没有在知音楼打开授权页面让用户去点击确认授权按钮?

在知音楼授权成功后,第三方应用会拿到一个 code,使用这个 code 请求过 access_token(有效期2小时) 后,180天内(与 refresh_token 有效期相同)不需要用户再手动点确认登录直接授权成功跳转回第三方应用。

# 3、移动端授权登录成功后,获取到的 code 有效期多少?

有效期是 5 分钟,且只可使用一次。已使用过或 5 分钟后将自动过期。

# 其他

如果您的 APP 要接入 Yach 授权登录,需要向 Yach 开放平台申请应用,并在您的 APP 中集成授权登录 SDK。为了更好协助您接入,您可知音楼扫码加入以下群聊咨询问题:

图片

上次更新: 6/30/2023, 2:32:57 PM
foo