iOS 接入兔小巢实践

最近给 App 接个问题反馈相关的功能,想到了兔小巢,尽管官方提供了文档来告诉我们接入的方式,不过接入的过程没有想象的那么顺利,所以记录一下。

# 为什么 App 没有匿名态

官方文档在这篇「在兔小巢中传递自己的登录态」文档里说明了移动端默认实现了用户无登录状态的接入(匿名/游客登录态)。

但是我的 App 按照官方文档接入后却没有这个状态,找了一圈发现,在知乎的这个帖子「怎么回事?产品社区怎么都是游客在反馈? (opens new window)」里有是否允许游客态的配置。在「产品后台 - 产品设置 - 高级设置 - 是否允许移动端游客身份」进行设置。

当我们允许游客登录之后,重新进入反馈网页就能正常看到游客登录的选项了。

# openid 的设置

接入文档里的 open_id 是干嘛的?文档并没有细说,在下面给了个链接,需要看在兔小巢中传递自己的登录态 (opens new window)这篇文档。

open_id 存在的目的是要传递用户自己的登录态,而传递用户登录态目的是希望用户能够查看自己以往发过的帖子以及管理员的回复。

传递用户自己的登录态(即第三方登录态)和微信/QQ 登录没有任何关系,传递成功的话就无需再次登录了。

不过兔小巢后台目前(2023-07-16)是将第三方登录态默认关闭的,我们在「产品后台 - 产品设置 - 高级设置 - 是否允许第三方登录态」可以将其打开。

我们重新审视下面三个参数,openId 是用户身份唯一标识,nickname 是用户昵称,avatar是头像。

let openId = "xxxyyy" // 用户ID
let nickname = "fanthus"  // 昵称
let avatar = "[https://txc.qq.com/static/desktop/img/products/def-product-logo.png](https://txc.qq.com/static/desktop/img/products/def-product-logo.png)"; // 头像url地址

如果应用本身自带登录体系的话,可以使用这种登录方式,这样也方便管理用户的反馈,因为可以直接和用户在应用中的行为关联起来。如果应用没有登录体系,直接用游客态登录就好了。匿名登录的话就不需要这三个参数了,后台也可以将允许第三方登录关掉。

我的应用不带登录系统,最后直接配置成游客登录的方式,懒得折腾了。最后,感觉兔小巢这文档写的真心一般啊…

参考地址:

  1. 兔小巢-APP-iOS 接入 (opens new window)
  2. 在兔小巢中传递自定义参数 (opens new window)

关注我的微信公众号,我在上面会分享我的日常所思所想。