Files
TIMSDK/README.md
T

242 lines
11 KiB
Markdown

English | [简体中文](./README_ZH.md)
Notice: If you open a pull request in TUIKit Android or iOS and the corresponding changes are successfully merged, your name will be included in README.md with a hyperlink to your homepage on GitHub.
# Instant Messaging
## Product Introduction
Build real-time social messaging capabilities with all the features into your applications and websites based on powerful and feature-rich chat APIs, SDKs and UIKit components.
<table style="text-align:center; vertical-align:middle; width:440px">
<tr>
<th style="text-align:center;" width="220px">Android Experience App</th>
<th style="text-align:center;" width="220px">iOS Experience App</th>
</tr>
<tr>
<td><img style="width:200px" src="https://qcloudimg.tencent-cloud.cn/raw/078fbb462abd2253e4732487cad8a66d.png"/></td>
<td><img style="width:200px" src="https://qcloudimg.tencent-cloud.cn/raw/b1ea5318e1cfce38e4ef6249de7a4106.png"/></td>
</tr>
</table>
TUIKit is a UI component library based on Tencent Cloud IM SDK. It provides universal UI components to offer features such as conversation, chat, search, relationship chain, group, and audio/video call features.
<img src="https://qcloudimg.tencent-cloud.cn/raw/9c893f1a9c6368c82d44586907d5293d.png" style="zoom:50%;"/>
## Image Download
Tencent Cloud branch download address: [Download](https://im.sdk.qcloud.com/download/github/TIMSDK.zip)
## SDK Download
<table>
<tr>
<th width="94px" style="text-align:center" >Native SDK</td>
<th width="0px" style="text-align:center" >Download Address</td>
<th width="0px" style="text-align:center">Integration Guide</td>
<th width="175px" style="text-align:center">Update Log</td>
</tr>
<tr>
<td style="text-align:center">Android </td>
<td style="text-align:center" ><a href="https://github.com/tencentyun/TIMSDK/tree/master/Android/IMSDK">GitHub (Recommended)</a></td>
<td style="text-align:left" ><a href="https://www.tencentcloud.com/document/product/1047/50057">[Quick Integration] TUIKit Integration (Android)</a><br><a href="https://www.tencentcloud.com/document/product/1047/34306">[General Integration] SDK Integration (Android)</a></td>
<td style="text-align:center" rowspan='4'><a href="https://intl.cloud.tencent.com/document/product/1047/34282">Update Log (Native)</a> </td>
</tr>
<tr>
<td style="text-align:center">iOS </td>
<td style="text-align:center" ><a href="https://github.com/tencentyun/TIMSDK/tree/master/iOS/IMSDK">GitHub (Recommended)</a></td>
<td style="text-align:left" ><a href="https://www.tencentcloud.com/document/product/1047/50056">[Quick Integration] TUIKit Integration (iOS)</a><br><a href="https://www.tencentcloud.com/document/product/1047/34307">[General Integration] SDK Integration (iOS)</a></td>
</tr>
<tr>
<td style="text-align:center">Mac </td>
<td style="text-align:center" ><a href="https://github.com/tencentyun/TIMSDK/tree/master/Mac/IMSDK">GitHub (Recommended)</a></td>
<td style="text-align:left" ><a href="https://www.tencentcloud.com/document/product/1047/34308">[General Integration] SDK Integration (Mac)</a></td>
</tr>
<tr>
<td style="text-align:center">Windows </td>
<td style="text-align:center" ><a href="https://github.com/tencentyun/TIMSDK/tree/master/Windows/IMSDK">GitHub (Recommended)</a></td>
<td style="text-align:left" ><a href="https://www.tencentcloud.com/document/product/1047/34310">[General Integration] SDK Integration (Windows)</a></td>
</tr>
</table>
## TUIKit Integration
<table >
<tr>
<th width="180px" style="text-align:center">Functional Module</th>
<th width="180px" style="text-align:center">Platform</th>
<th width="500px" style="text-align:center">Document Link</th>
</tr>
<tr >
<td rowspan='2' style="text-align:center">TUIKit Library</td>
<td style="text-align:center">iOS</td>
<td style="text-align:center"><a href="https://www.tencentcloud.com/document/product/1047/50062">TUIKit-iOS Library</a></td>
</tr>
<tr>
<td style="text-align:center">Android</td>
<td style="text-align:center"><a href="https://www.tencentcloud.com/document/product/1047/50062">TUIKit-Android Library</a></td>
</tr>
<tr >
<td rowspan='2' style="text-align:center">Quick Integration</td>
<td style="text-align:center">iOS</td>
<td style="text-align:center"><a href="https://www.tencentcloud.com/document/product/1047/50056">TUIKit-iOS Quick Integration</a></td>
</tr>
<tr>
<td style="text-align:center">Android</td>
<td style="text-align:center"><a href="https://www.tencentcloud.com/document/product/1047/50057">TUIKit-Android Quick Integration</a></td>
</tr>
<tr>
<td rowspan='2' style="text-align:center">Modifying UI Themes</td>
<td style="text-align:center">iOS</td>
<td style="text-align:center"><a href="https://www.tencentcloud.com/document/product/1047/50051">TUIKit-iOS Modifying UI Themes</a></td>
</tr>
<tr>
<td style="text-align:center">Android</td>
<td style="text-align:center"><a href="https://www.tencentcloud.com/document/product/1047/50052">TUIKit-Android Modifying UI Themes</a></td>
</tr>
<tr>
<td rowspan='2' style="text-align:center">Setting UI Styles</td>
<td style="text-align:center">iOS</td>
<td style="text-align:center"><a href="https://www.tencentcloud.com/document/product/1047/50048">TUIKit-iOS Setting UI Styles</a></td>
</tr>
<tr>
<td style="text-align:center">Android</td>
<td style="text-align:center"><a href="https://www.tencentcloud.com/document/product/1047/50049">TUIKit-Android Setting UI Styles</a></td>
</tr>
<tr>
<td rowspan='2' style="text-align:center">Adding Custom Messages</td>
<td style="text-align:center">iOS</td>
<td style="text-align:center"><a href="https://www.tencentcloud.com/document/product/1047/50043">TUIKit-iOS Adding Custom Messages</a></td>
</tr>
<tr>
<td style="text-align:center">Android</td>
<td style="text-align:center"><a href="https://www.tencentcloud.com/document/product/1047/50044">TUIKit-Android Adding Custom Messages</a></td>
</tr>
<tr>
<td rowspan='2' style="text-align:center">Implementing Local Search</td>
<td style="text-align:center">iOS</td>
<td style="text-align:center"><a href="https://www.tencentcloud.com/document/product/1047/50037">TUIKit-iOS Implementing Local Search</a></td>
</tr>
<tr>
<td style="text-align:center">Android</td>
<td style="text-align:center"><a href="https://www.tencentcloud.com/document/product/1047/50038">TUIKit-Android Implementing Local Search</a></td>
</tr>
<tr>
<td rowspan='2' style="text-align:center">Integrating Offline Push</td>
<td style="text-align:center">iOS</td>
<td style="text-align:center"><a href="https://www.tencentcloud.com/document/product/1047/50033">TUIKit-iOS Integrating Offline Push</a></td>
</tr>
<tr>
<td style="text-align:center">Android</td>
<td style="text-align:center"><a href="https://www.tencentcloud.com/document/product/1047/50034">TUIKit-Android Integrating Offline Push</a></td>
</tr>
</table>
## Differences Between the Basic Edition and the Enhanced Edition
- SDK added the Enhanced Edition from SDK 5.4. The original edition is called the Basic Edition.
- Both the Basic Edition and Enhanced Edition support [V2 APIs](https://intl.cloud.tencent.com/document/product/1047/36169). However, the Enhanced Edition no longer supports legacy APIs while the Basic Edition still supports legacy APIs.
- If you have not integrated legacy APIs, we recommend that you directly use [V2 APIs](https://intl.cloud.tencent.com/document/product/1047/36169) and choose the Enhanced Edition SDK.
- If you have integrated legacy APIs, we recommend that you upgrade to [V2 APIs](https://intl.cloud.tencent.com/document/product/1047/36169) and gradually transition to the Enhanced Edition SDK.
- Compared with the Basic Edition, the Enhanced Edition has greatly reduced the SDK size and installation package increment.
- Compared with the Basic Edition, the Enhanced Edition provides more new features.
- Subsequent development of new features will only be supported on the Enhanced Edition. The Basic Edition supports only routine maintenance and fixing of existing problems.
- Enhanced Edition Pro has been released from SDK 6.8 version which supports dual line acceleration on network layer and provides better performance for bad network environment.
### Comparison of the SDK sizes
<table>
<tr>
<th width="200px" style="text-align:center">Platform</th>
<th width="260px" style="text-align:center">Item</th>
<th width="200px" style="text-align:center">Basic Edition</th>
<th width="200px" style="text-align:center">Enhanced Edition</th>
</tr>
<tr>
<td style="text-align:center">Android</td>
<td style="text-align:center">aar size</td>
<td style="text-align:center">7.8 MB</td>
<td style="text-align:center">3.1 MB</td>
</tr>
<tr>
<td style="text-align:center">iOS</td>
<td style="text-align:center">framework size</td>
<td style="text-align:center">57.7 MB</td>
<td style="text-align:center">11.2 MB</td>
</tr>
</table>
### Comparison of the app size increments
<table>
<tr>
<th width="200px" style="text-align:center">Platform</th>
<th width="260px" style="text-align:center">Architecture</th>
<th width="200px" style="text-align:center">Basic Edition</th>
<th width="200px" style="text-align:center">Enhanced Edition</th>
</tr>
<tr>
<td rowspan='2' style="text-align:center">apk increment</td>
<td style="text-align:center">armeabi-v7a</td>
<td style="text-align:center">3.2 MB</td>
<td style="text-align:center">1.1 MB</td>
</tr>
<tr>
<td style="text-align:center">arm64-v8a</td>
<td style="text-align:center">5.2 MB</td>
<td style="text-align:center">1.7 MB</td>
</tr>
<tr>
<td style="text-align:center">ipa increment</td>
<td style="text-align:center">arm64</td>
<td style="text-align:center">2.1 MB</td>
<td style="text-align:center">1.1 MB</td>
</tr>
</table>
## Guidelines for Upgrading IMSDK to V2 APIs
[API Upgrade Guidelines](https://docs.qq.com/sheet/DS3lMdHpoRmpWSEFW)
## Latest Enhanced Version 7.4.4643 @2023.08.11
### SDK
- Support subscribing and unsubscribing users
- Support emoji replies
- Support voice-to-text capability
- Support revoking messages in AVChatRoom
- Support setting global message reception options
- Single forwarded message supports automatic renewal of rich media resources
- Voice and video messages support security strike notifications
- Message revoke supports "revoke reason" + "revoker"
- Fixed the issue of inaccurate read status for the last message in a one-on-one chat session
- Fixed the issue of friend remark information not being cleared in time after deleting a friend
- Optimized handling of SQLite file corruption
### TUIKit & Demo
- Support storing conversation group order information in the cloud
- iOS optimized video sending process
- Android fixed the issue of continuous voice messages failing to autoplay
- Android fixed the issue of incorrect time display in the call record list
- Android fixed the issue of overlapping items in the Chat Lite message list
## Latest Basic Version 5.1.66 @2021.09.22
### Android
- Removed the feature of getting Wi-Fi information.
## Feedback
- If you encounter any issue when using TIMSDK, please provide feedback on the problem to us so that we can quickly and effectively locate and solve the issue for you.
- [TIMSDK Issue Feedback Guidelines](https://github.com/tencentyun/TIMSDK/wiki/TIMSDK-issue%E6%9C%89%E6%95%88%E5%8F%8D%E9%A6%88%E6%A8%A1%E6%9D%BF)