💬
官方 iOS Swift 聊天 SDK
🌀
介绍
Applozic 通过聊天、视频和语音功能将实时交互带给您的网页、移动和会话应用。我们用可扩展性和功能强大的聊天 API 为新兴初创公司和成熟企业赋能,帮助应用产品团队能够提高用户参与度,并缩短上市时间。
来自50多个国家的客户和开发人员在使用我们,并深爱我们。从在线市场、电子商务,到按需服务,再到教育技术、健康技术、游戏、直播等。
我们的产品功能丰富,包括为 iOS、Android、React Native 和 Flutter 提供的强大客户端 SDK。我们还支持流行的服务器端语言,有美观、可自定义的 UI 工具包,以及灵活的平台 API。
聊天、视频和音频通话已成为后 COVID 时代的常态,我们通过提供这些精确的解决方案,弥合了商家和客户之间的差距。
🔰
目录
🔮
先决条件- 安装以下:
- 确保您的项目符合以下要求
- 您的项目必须针对 iOS 12 或更高版本。
- 设置一个物理或模拟器 iDevice 来运行您的应用
- 注册 或登录以获取 Applozic 的 API 密钥/App Id。
🚀
快速开始
设置 Xcode 项目
- 打开 Xcode 创建一个新的项目 选择 App 并点击下一步
- 根据您的喜好设置产品名称(我们将命名为 applozic-first-app),然后点击下一步,选择文件夹然后创建。
1. 设置
将 ApplozicSwift SDK 用于 iOS 集成到现有应用中
您可以选择使用 CocoaPods 或 Swift Package Manager 安装 iOS ApplozicSwift SDK。
使用 CocoaPods 安装 ApplozicSwift
ApplozicSwift 可以通过 CocoaPods 获取。要安装它
- 打开终端
- 导航到你的项目根目录(即存放 *.xcodeproj 文件的目录)
- 运行命令
pod init
再次进入项目的根目录,单击“Podfile”进行打开。在文件中粘贴以下代码并保存
source 'https://github.com/CocoaPods/Specs'
use_frameworks! # Required to add
platform :ios, '12.0'
target 'TARGET_NAME' do
pod 'ApplozicSwift' # Required to add
end
-
前往包含 Podfile 的项目目录,在终端中运行
pod install
或pod update
以刷新 CocoaPods 依赖。 -
打开新生成的 *.xcworkspace 或现有的工作空间,构建你的项目。
使用 Swift Package Manager 安装 ApplozicSwift
通过 Xcode 安装
-
在 Xcode 中,通过导航到文件 > Swift 包 > 添加包依赖…来安装 ApplozicSwift SDK
-
在弹出的提示中,选择 ApplozicSwift GitHub 仓库
https://github.com/AppLozic/ApplozicSwift.git
-
选择你想要使用的 ApplozicSwift 版本。对于新项目,我们建议使用 ApplozicSwift 的最新版本。
-
点击“下一步”按钮后,选择 ApplozicSwift 包产品,它将如下所示,然后点击完成。
添加权限
App Store 要求访问相机、联系人、图库、位置、麦克风的任何应用都必须描述为何应用需要访问这些功能。
在项目的 Info.plist
文件中。请添加以下权限
<key>NSCameraUsageDescription</key>
<string>Allow Camera</string>
<key>NSContactsUsageDescription</key>
<string>Allow Contacts</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>Allow location sharing!!</string>
<key>NSMicrophoneUsageDescription</key>
<string>Allow MicroPhone</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>Allow Photos</string>
<key>NSPhotoLibraryAddUsageDescription</key>
<string>Allow write access</string>
导入用于身份验证的方法
我们需要的方法文件是 ALChatManager
文件。
- 从这里 下载
ALChatManager.swift
- 通过在任何文件夹中单击“添加文件”选项将下载的
ALChatManager.swift
添加到你的项目中 - 在 Xcode 中打开
ALChatManager.swift
文件,并将 "applozic-sample-app" 替换为从 此处 获取的你的 App ID
2. 注册/登录用户
身份验证过程允许您在必要时创建用户或登录到聊天。这通常是在您的应用中(即登录或注册按钮中)登录或注册用户的过程中完成的。
let alUser : ALUser = ALUser()
alUser.applicationId = <PASS_YOUR_APP_ID_HERE>
alUser.userId = "demoUserId" // NOTE : +,*,? and space are not allowed chars in userId.
alUser.email = "[email protected]"
alUser.imageLink = "" // User's profile image link.
alUser.displayName = "DemoUserName" // User's Display Name
alUser.password = "testpassword" //User password
//Saving these details
ALUserDefaultsHandler.setUserAuthenticationTypeId(Int16(APPLOZIC.rawValue))
//Registering or Login in the User
ALChatManager.shared.connectUser(alUser, completion: { response, error in
if error != nil {
print("Error while logging \(String(describing: error))")
} else {
print("Successfull login")
}
})
注意:您必须理解的是,在ApplozicSwift SDK中,注册新用户和登录现有用户具有相同的过程和代码。
4. 打开会话并发送第一条消息
在为打开一对一会话并发送消息而指定的活动或按钮操作中实现以下代码,传递RECIPIENT-USERID
ALChatManager.shared.launchChatWith(contactId: <RECIPIENT-USERID>, from: self)
5. 打开聊天列表
在为显示聊天列表屏幕而指定的活动或按钮操作中实现以下代码。
ALChatManager.shared.launchChatList(from: self)
5. 用户登出
在您的应用退出时,您也需要登出Applozic用户,请使用以下方法登出用户
ALChatManager.shared.logoutUser { _ in
print("Logout successfully")
}
文档
建议您浏览一些关于ApplozicSwift聊天和消息SDK文档的基本信息。
📢
公告本库的所有更新都在我们的发布中进行记录。如有任何疑问,请随时通过[email protected]与我们联系。
🚦
路线图如果您对这个项目的未来方向感兴趣,请查看我们的公开问题和拉取请求。
我们愿意
🎊
特色- 一对一和群聊
- 拍照
- 照片分享
- 位置共享
- 推送通知
- 应用内通知
- 在线状态
- 上次登录时间
- 未读消息数
- 正在输入指示器
- 消息已发送
- 已阅读收件人和投递报告
- 离线消息
- 用户屏蔽/解禁
- 多设备同步
- 应用程序到用户消息
- 自定义聊天气泡
- UI定制工具包
- 跨平台支持(iOS、Android及Web)
🌈
关于 & 帮助/支持当您使用applozic标记提问时,欢迎在StackOverflow上提问。
- Applozic是最佳的iOS即时消息聊天SDK,您还不信服?
- 请给我们发送邮件至[email protected]
- 我们很高兴为您安排演示。
- 为初创公司和开源贡献者提供特别计划。
- Android聊天SDK https://github.com/AppLozic/Applozic-Android-SDK
- Web聊天插件 https://github.com/AppLozic/Applozic-Web-Plugin
- iOS ApplozicSwift Objective-C 示例项目 https://github.com/AppLozic/Applozic-Objective-C-Sample-App
✔️
许可证此代码库完全由 Applozic 的贡献者团队开发和支持。