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.
| Android Experience App |
iOS Experience App |
 |
 |
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.
## Image Download
Tencent Cloud branch download address: [Download](https://im.sdk.qcloud.com/download/github/TIMSDK.zip)
## SDK Download
## TUIKit Integration
## 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
| Platform |
Item |
Basic Edition |
Enhanced Edition |
| Android |
aar size |
7.8 MB |
3.1 MB |
| iOS |
framework size |
57.7 MB |
11.2 MB |
### Comparison of the app size increments
| Platform |
Architecture |
Basic Edition |
Enhanced Edition |
| apk increment |
armeabi-v7a |
3.2 MB |
1.1 MB |
| arm64-v8a |
5.2 MB |
1.7 MB |
| ipa increment |
arm64 |
2.1 MB |
1.1 MB |
## Guidelines for Upgrading IMSDK to V2 APIs
[API Upgrade Guidelines](https://docs.qq.com/sheet/DS3lMdHpoRmpWSEFW)
## Latest Enhanced Edition 7.1.3925 @2023.03.07
### SDK
- Supported pulling historical group messages by sequence list
- Supported setting whether to clear historical messages when you delete a conversation
- Added an API for deleting conversations in batches
- Supported modifying the approval method of group member invitations
- Supported group counters for community groups
- Added a parameter for setting a message object to bypass the content moderation
- Supported reporting one-to-one message read by timestamp
- Supported reporting group message read by sequence
- Supported getting timestamp of the read message in one-to-one chats
- Supported getting sequence of the read message in group chats
- Fixed the issue that intercepted messages due to local moderation were not saved in the local message database.
- Fixed the issue that unread message count displayed when offline group members logged in again even though the messages had been excluded from the unread count.
- Fixed the occasional issue of inaccurate `isRead` status of messages when users sent and received messages again after a one-to-one chat is deleted.
- Fixed the occasional inconsistency of unread one-to-one message count in multi-device login scenarios.
- Fixed the occasional crashes when file uploading failed.
- Changed enumerated values of `V2TIMGroupApplicationGetType` to those of `V2TIMGroupApplicationType`
- Changed the attribute name `getType` of `V2TIMGroupApplication` to `applicationType`
### TUIKit and demo
- Supported group polling and one-by-one notes
- Improved the minimalist theme
- Optimized the signaling display logic
## 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)