The open source lightweight IM framework MobileIMSDK v6.1.2 is released!

Time:2022-11-24

1. Introduction to update content

This update is a minor version update, and several optimizations have been made (see the update history: Code Cloud Release Nodes). It may be the only similar open source IM framework on the market that supports UDP+TCP+WebSocket three protocols at the same time.

2. Introduction to MobileIMSDK

The open source lightweight IM framework MobileIMSDK v6.1.2 is released!

MobileIMSDK is a set of original IM communication layer framework specially developed for mobile terminals:

  • After 8 years, tried and tested;
  • Ultra-lightweight, highly refined, lib package within 50KB;
  • Carefully packaged, a set of API supports UDP, TCP, and WebSocket three protocols at the same time (may be the only open source in the whole network);
  • The client supports iOS, Android, standard Java, H5, applets (under development..), Uniapp (under development..);
  • The server is based on Netty, with excellent performance and easy expansion;
  • It can seamlessly interoperate with the sister project MobileIMSDK-Web to realize web page chat or push, etc.;
  • It can be applied to various scenarios such as cross-device and cross-network chat apps, enterprise OA, and message push.

The MobileIMSDK project started in October 2013. It was initially used as the underlying implementation of instant messaging for a certain product. It was completely developed from scratch, and the technology is independent and controllable!

You may need to: View the detailed introduction about MobileIMSDK.

3. Code hosting synchronous update

OsChina.net:
Code hosting:http://git.oschina.net/jackjiang/MobileIMSDK
Project information: Click to view more information

GitHub.com:
Code hosting:https://github.com/JackJiang2011/MobileIMSDK
Project information: Click to view more information

4. Design goals of MobileIMSDK

Let developers focus on the development of application logic, and the underlying complex instant messaging algorithms are handed over to SDK developers, thus decoupling the complexity of instant messaging application development.

Five, MobileIMSDK framework composition

The entire MobileIMSDK framework consists of the following 5 parts:

  • Android client SDK: used for Android instant messaging client, supports Android 2.3 and above, view API documentation;
  • iOS client SDK: used to develop iOS instant messaging client, support iOS 8.0 and above, view API documentation;
  • Java client SDK: used to develop cross-platform PC instant messaging client, support Java 1.6 and above, view API documentation;
  • H5 Client SDK: There is no open-source version yet, check the edited and commented version;
  • Server-side SDK: used to develop instant messaging server, support Java 1.7 and above, view API documentation.

The architecture composition of the whole set of MobileIMSDK framework:
The open source lightweight IM framework MobileIMSDK v6.1.2 is released!

In addition: MobileIMSDK can seamlessly interoperate with the sister project MobileIMSDK-Web, so as to realize web page chat or push, etc.

6. Update content of MobileIMSDK v6.1.2

【important】:
MobileIMSDK v6.1.2 is a minor version with several optimizations! check the details

[Solved Bugs]:

  • [Andior/iOS] Solved the problem that when the network is disconnected, the packets in the retransmission queue do not increase the number of retransmissions and thus keep retransmitting;
  • [iOS] Solved the problem that in the RMMapper library, the animation effect in some projects does not take effect due to overriding the copyWithZone method of the parent class!
  • [Other optimizations and improvements]:
  • [Andiord] The complete proguard confusion configuration is completed in the Andriod side Demo, otherwise when someone really “realease” the Demo, it will run and report an error;
  • [iOS] Forgot to add the “sm” field in the Protocol class in the previous version, now it is added;
  • [Server] The server Demo is synchronized to the latest project, and the previously submitted version does not correctly incorporate the latest lib, etc.;
  • [Server] Upgrade log4j2 to 2.15.0 to solve the high-risk vulnerability of Log4j2 remote code execution;
  • [Andiord] The targetSdkVersion of the SDK and Demo projects on the Android side is increased to 30;
  • [Andriod] The TCP version protocol Netty library loading method on the Andriod side is changed to gradle loading;

[version address]:
https://gitee.com/jackjiang/M…