安卓客服SDK怎么接入,iOS要另接吗

合从在线客服系统首页 / 文章列表 / 详情2026-10-25 11:00:00

作者:周屿|更新于 2026-10-25

老板说 APP 里要加个「联系客服」,活落到安卓开发手上。手上本来就排着别的需求,最想知道的是要动哪些地方,会不会给上架审核惹麻烦。用现成的安卓客服SDK,工作量不大。

安卓这边加一行依赖,写两行代码,点「联系客服」就能打开一个完整的客服页。客户在里面发消息、发图片、按住说话,客服在电脑上回。

安卓 APP 里整页打开的客服页:顶上标题栏写着「在线客服」,左上角是返回,往下是客户发的消息

那 iOS 要不要另接?要。iOS 是另一套工程,也得集成一次。不过两边用的是同一个渠道 ID,后台不用建两套。

下面按顺序走一遍,用的是合从的 SDK,代码都照文档站原样贴。

先在工作台拿一个渠道 ID

开发要的只有一个东西,就是渠道 ID。不要密钥,不要证书,也不要备案域名。

渠道 ID 在工作台里建。工作台,就是客服回消息的那个页面。建渠道要管理员账号,普通客服账号看不到这个入口。

  1. 登录工作台,左侧导航最下面点「设置」。
  2. 在「客户」下面找到「渠道管理」,点「接入新渠道」。
  3. 渠道类型选「APP SDK」,填个渠道名称,比如「商城 APP 客服」,点「创建渠道」。

团队第一次建渠道时,会先弹一个窗,写着工作台和手机上合从 APP 要什么版本。版本太低,收不到这个渠道的消息。看完点「我知道了」,再接着建。

工作台「接入新渠道」页,渠道类型选中 APP SDK,渠道名称填「商城 APP 客服」

建好以后,页面直接跳到这个渠道的「SDK 接入」。安卓和 iOS 两段代码都在上面,渠道 ID 已经填进去了,整段复制给开发就行。安卓那段能切 Kotlin 和 Java,iOS 那段能切 Swift 和 Objective-C。

「SDK 接入」页:Android 那段代码已经带好渠道 ID,iOS 那段能切 Swift 和 Objective-C

只想单独拿渠道 ID,在左边「进阶」下面点「开发者」,最上面那张「接入参数」卡里就是。

还没注册、没建团队的,先看在线客服系统从注册到开始接待。

安卓客服SDK:加一行依赖,写两行代码

前提有两个。minSdk 不低于 21,也就是 Android 5.0。工程能从 Maven Central 拉依赖。

新建的安卓工程默认就有 mavenCentral(),多数时候不用改。老工程翻一下,Android Gradle Plugin 7.0 以上看 settings.gradle.kts 里的 dependencyResolutionManagement,更早的看根 build.gradle 的 allprojects。

  1. 在 APP 模块的 build.gradle.kts 里加一行依赖,然后同步 Gradle:
dependencies {
    implementation("com.aihecong:hecong-chat-sdk:0.7.0")
}

用 Groovy DSL 的工程写成 implementation 'com.aihecong:hecong-chat-sdk:0.7.0'。

  1. 在 APP 启动流程里调一次 configure,把渠道 ID 交给 SDK:
HecongChat.configure(this, HecongChatConfig("你的渠道ID"))

这一步只登记参数,不联网,也不收集信息。还是建议放在用户同意隐私政策之后调,国内应用市场审核会看第三方 SDK 什么时候初始化。

想让客户头一回点开更快,可以在 configure 后面再调一次 HecongChat.prewarm(this)。这一步会联网,一定要放在用户同意隐私政策之后。不调也能用,头一回打开慢一点。

  1. 在「联系客服」的点击事件里打开客服页:
HecongChatActivity.start(this, HecongChatConfig("你的渠道ID"))

到这就能用了。聊天页整页打开,顶上一条标题栏写着「在线客服」,左上角是返回。

AndroidManifest.xml 不用为这个页面改,SDK 自己的 manifest 已经声明好了。选文件、拍照、返回键、前后台切换,整页打开时都处理好了。

项目是 Java 写的也能直接调,导入 HecongChat、HecongChatActivity、HecongChatConfig 三个类,写法一样。

语音和拍照的权限自己声明

这是最容易漏的地方。SDK 自己一条权限都不声明。客户要按住说话发语音,或者直接拍照拍视频发给客服,就要在自己的 AndroidManifest.xml 里声明:

<!-- 要让客户按住说话发语音,这两条必须一起声明 -->
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<!-- 要让客户直接拍照或拍视频发给客服 -->
<uses-permission android:name="android.permission.CAMERA" />

用到哪个声明哪个。只让客户打字、发相册里的照片和文件,一条都不用加。

语音那两条要一起加。只加 RECORD_AUDIO,客户点了「允许」,还是提示麦克风被占用,重启 APP 也没用。

漏声明不会崩,只是对应的按钮没反应。没声明相机,拍摄入口点了没动静;没声明麦克风,发语音会提示权限没开。

申请权限的流程不用自己写。SDK 在弹系统授权框之前,会先弹一层说明,写清要什么权限、拿来做什么,这是国内应用市场审核要的。也只在客户点了那个功能时才申请,不会一启动就弹。

APP 如果是多进程的,要在任何 WebView 创建之前,给非主进程设一个数据目录后缀,不然会直接崩。

iOS 要另接一次,渠道 ID 用同一个

iOS 填同一个渠道 ID 就行,后台不用另建渠道。想在工作台里把安卓和 iOS 的咨询分开看,再建一个渠道,两边各填各的。

部署目标不低于 iOS 13。

发语音另有门槛。iPhone 系统要 iOS 14.5 以上,安卓手机上的 Android System WebView 要比较新。达不到的手机,按住说话的入口不显示,打字、发图片、发文件不受影响。

  1. 在 Xcode 里选「File > Add Package Dependencies」,搜仓库地址,依赖规则选 Up to Next Major Version,版本填 0.7.0,把 HecongChatSDK 加到 APP target:
https://github.com/sandywk/hecong-ios-sdk

SDK 从 GitHub 拉,国内网络头一回解析可能要等很久。解析失败了,在「File > Packages > Reset Package Caches」之后重试。

  1. 启动时登记渠道 ID:
import HecongChatSDK

HecongChat.shared.configure(HecongChatConfig(channelId: "你的渠道ID"))
  1. 点「联系客服」时打开客服页:
HecongChat.shared.push(config: HecongChatConfig(channelId: "你的渠道ID"))

SDK 自己找到当前的导航栏,把客服页推进去,UIKit 和 SwiftUI 写法一样。

  1. 在 Info.plist 里补两句用途说明。NSMicrophoneUsageDescription 写在客服会话里录语音要用麦克风,NSCameraUsageDescription 写在客服会话里拍照片视频要用相机。

苹果会审这两句话,只写「需要相机」会被拒。

装到手机上发一条试试

App 渠道只能在手机或模拟器里测。渠道地址拿到浏览器里打开,只会看到一张提示页,让你去 APP 里打开。

把 APP 装上,点开客服,能看到带欢迎语的对话界面。发一条消息,工作台的对话列表里能看到,就通了。

自己工程还没集成完,可以先装示范 App。这是一个已经装好 SDK 的 APP,扫码地址是 https://assets.aihecong.com/app-demo/index.html,安卓和 iPhone 同一个码。

用微信、QQ、钉钉扫,会被拦住,下不了安装包,也跳不到 TestFlight。点右上角的「···」,选「在浏览器中打开」,再照常装。安卓装的时候会提示未知来源,选继续安装就行。

装好以后底部切到「配置与诊断」,打开「渠道配置」,把渠道 ID 粘进去保存。发一条消息,工作台收到了,就说明渠道和账号这边是通的,之后再出问题只用查自己的工程。

联调发的消息会真的进客服的对话列表,和真客户混在一起。可以建两个 App 渠道,测试包用一个,正式包用另一个。

上线前再看两件事。

  • 客户在 APP 里退出登录时,调一次 resetUser()。不调的话,下一个在这台手机上登录的人,会看到上一个人的聊天记录。
  • 提交应用市场前,把 SDK 的公示信息填进自己的隐私政策,漏了会被打回。

接通以后,客服就能在工作台回 APP 里来的咨询了。客户退出 APP 后客服才回的消息,可以推到他手机上。夜里没人值班,渠道上可以绑一个 AI 机器人先接着,做法见AI 客服机器人怎么搭。

先装示范 App 填进渠道 ID 发一条,工作台收到了,再动自己的工程。

常见问题

安卓 SDK 21 对应安卓几?

minSdk 21 对应 Android 5.0。这也是合从安卓客服SDK的最低要求,APP 的 minSdk 不低于 21 就能装。

uni-app、Flutter 写的 APP 能用安卓客服SDK吗?

uni-app、React Native、Flutter 这三类不用装原生 SDK,在 APP 里放一个 WebView 组件,打开一条对话链接就行。对话链接,就是一个点开就能聊天的网址,对话链接是什么单独写过。

这条路少三样,未读红点、客户退出 APP 后的离线消息通知、应用市场要的权限说明弹窗。这三样都要,框架又能写原生模块的,可以在原生层集成 SDK,再从 JS 那边调用打开客服页。合从没在这几个框架上验证过,具体怎么集成,以框架自己的文档为准。

第三方客服系统 SDK 怎么挑?

看四点。安卓和 iOS 是不是都有原生 SDK;接入要准备多少东西,要不要密钥、证书、后端改动;权限申请和隐私合规有没有按应用市场的要求替你做好;能不能先装个示范 App,看清客户那边长什么样再排开发。

轻松上手,简单好用

多渠道统一服务,提升营销转化,降低人工回复成本,客服团队协助更高效