好友(含聊天)开发指南
本文介绍如何在游戏中加入好友&聊天系统。
集成前准备
- 参考 开发者中心配置 创建应用、配置包名与签名证书
- 参考集成指南(Unity、Android、iOS)完成对应平台或引擎的基础接入
- 好友模块依赖于 TapTap 登录模块,开发者接入前应先完成 TapTap 登录的接入
权限说明
- Android
- iOS
| 权限 | 使用目的 | 权限申请时机 |
|---|---|---|
| 网络权限 | 用于访问网络数据 | 用户首次使用该功能时会申请权限 |
| 网络状态权限 | 用于检查网络连接状态(如 Wi-Fi 或移动数据是否可用) | 用户首次使用该功能时会申请权限 |
| 读取外部存储权限 | 用于读取设备上的文件和媒体内容 | 用户首次使用相关功能时会申请权限 |
| 写入外部存储权限 | 用于保存文件到设备存储 | 用户首次使用文件保存功能时会申请权限 |
| 管理外部存储权限 | 用于管理设备上的文件 | 用户首次使用文件管理功能时会申请权限 |
| 前台服务权限 | 用于在应用处于后台时保持某些功能运行 | 应用需要在后台运行服务时 |
| 相机权限 | 用于拍摄照片和视频通话 | 用户首次使用相机相关功能时会申请权限 |
| 振动权限 | 用于消息通知时的振动提醒 | 应用需要使用振动提醒时 |
该模块将在应用中添加如下权限:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.VIBRATE" />
| 权限 | 使用目的 | 权限申请时机 |
|---|---|---|
| 相册权限 | 用于获取相册图片或保存聊天图片到相册中 | 用户首次使用该功能时会申请权限 |
| 相机权限 | 用于拍照获取图片 | 用户首次使用该功能时会申请权限 |
SDK 获取
- Unity
- Android
- iOS
远程依赖
NPMJS 方式:在 Packages/manifest.json 中添加:
"dependencies":{
"com.taptap.sdk.core":"4.10.0",
"com.taptap.sdk.login":"4.10.0",
"com.taptap.sdk.relation":"4.10.0"
}
GitHub 方式:在 Packages/manifest.json 中添加:
"dependencies":{
"com.taptap.sdk.core":"https://github.com/taptap/tapsdk-unity-dist.git?path=/Core#4.10.0",
"com.taptap.sdk.login":"https://github.com/taptap/tapsdk-unity-dist.git?path=/Login#4.10.0",
"com.taptap.sdk.relation":"https://github.com/taptap/tapsdk-unity-dist.git?path=/Relation#4.10.0"
}
本地文件导入
在 下载页 下载并导入以下 unitypackage 文件:
TapSDK_Core.unitypackage(TapTapSDK 核心模块,必选)TapSDK_Login.unitypackage(TapTapSDK 登录模块,必选)TapSDK_Relation.unitypackage(TapTapSDK 好友模块,必选)
在 app module 的 build.gradle 中添加对应依赖:
dependencies {
implementation 'com.taptap.sdk:tap-core:4.10.0'
implementation 'com.taptap.sdk:tap-login:4.10.0'
implementation 'com.taptap.sdk:tap-relation:4.10.0'
}
远程依赖
- 在工程 Podfile 文件中对应模块下添加依赖:
pod 'TapTapSDK/Relation', '~> 4.10.0'
- 执行
Pod install下载对应依赖文件
本地文件依赖
好友模块依赖于初始化和 TapTap 登录模块,使用本地文件方式添加依赖时,需先参考集成指南 和 TapTap 登录添加对应本地文件依赖项。
- 在下载页下载如下文件:
TapTapRelationSDK好友依赖库TapTapRelationResource.bundle好友资源文件bifrost_sdk.xcframework基础库TapTapProfileSDK用户名片依赖库TapTapProfileResource.bundle用户名片资源文件TapTapKingfisher基础库
- 在工程中添加
framework静态库,注意添加时选择 Embed 方式为 Do Not Embed,导入bundle资源文件
iOS 工程配置
在 iOS 项目或通过 Unity 项目导出 Xcode 工程时,由于使用好友服务需要相册、相机权限,所以需配置对应权限使用说明,配置方式如下:
- Unity
- iOS
在 Assets/Plugins/iOS/Resource 目录下创建 TDS-Info.plist 文件 (如果已创建,只需添加内容即可),配置相关权限并替换授权文案:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSPhotoLibraryUsageDescription</key>
<string>需要访问相册以选择或保存图片</string>
<key>NSCameraUsageDescription</key>
<string>