I. Introduction of updated content

This is the main version update (this update content see the end of the article “MobileIMSDK V6.0 update content” section), strong upgrade, will support TCP, UDP, WebSocket three protocols, carefully encapsulated, the same SET of API, three protocols coexist.

It is probably the only open source IM framework in the market that supports UDP, TCP, and WebSocket.

2. Introduction to MobileIMSDK

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

  1. After 8 years, tested;
  2. Ultra-lightweight, highly refined, lib package less than 50KB;
  3. Carefully encapsulated, a set of API support UDP, TCP, WebSocket three protocols (may be the only open source network);
  4. Client support iOS, Android, standard Java, H5, small programs (in development..) , Uniapp(under development..) ;
  5. Server based on Netty, excellent performance, easy to expand; 👈
  6. With sister project MobileIMSDK-Web seamless interoperability to achieve Web chat or push; 👈
  7. It can be applied to a variety of scenarios, such as cross-device and cross-network chat APP, enterprise OA, and message push.
  8. The project of MobileIMSDK started in October 2013. At first, it was used as the underlying implementation of instant messaging of a product. It was completely developed from zero and the technology was independent and controllable!

You may want to: Check out a detailed description of the MobileIMSDK.

Three, code managed synchronous update

OsChina.net:

  • Managed code: http://git.oschina.net/jackji…
  • Project information: click here for more information

GitHub.com:

  • Managed code: https://github.com/JackJiang2…
  • Project information: click here for more information

Four, MobileIMSDK design objectives

Let developers focus on the development of application logic, and the underlying complex instant messaging algorithm is handed over to SDK developers, thus uncoupling the complexity of instant messaging application development.

Five, MobileIMSDK framework composition

The MobileIMSDK framework consists of the following five parts:

  1. Android client SDK: for The Android version of instant messaging client, support Android 2.3 and above, view the API documentation;
  2. IOS client SDK: used to develop iOS instant messaging client, support iOS 8.0 and above, view THE API documentation;
  3. Java Client SDK: used for the development of cross-platform PC instant messaging client, support Java 1.6 or above, view the API documentation;
  4. H5 client SDK: data collation, soon to be officially released;
  5. Server SDK: used to develop the IM server. It supports Java 1.7 or later. Check the API documentation.

Update content of MobileIMSDK V6.0

[Important note] : MobileIMSDK V6 is the new version, added to the WebSocket protocol elegant support, multi-end mutual kick support and so on! Check the details

[Added important features] :

New WebSocket protocol support for the server, a set of API elegant support TCP, UDP, WebSocket 3 protocols;


Support multi-end mutual kicking function (can deal with the influence of complex mobile network changing logic on multi-end mutual kicking algorithm);

[Bug solved] :

  1. [Android] Fixed a null pointer hazard in fireDisconnectedToServer() method after disconnection;
  2. [iOS] Fixed a bug where calling the [ClientCoreSDK releaseCore] method would trigger automatic login logic in the TCP version of the code.
  3. [Server] solves the problem that under UDP protocol, the client sends back the login ACK response after the kicked has logged out of the session of the server, which causes the server to mistakenly send the logged in response to the unkicked.

[Other optimizations and improvements] :

  1. [Andriod] Deprecates the use of AsyncTask in SDK and Demo code.
  2. [Android] simplifies all code that can use Lambda expressions with lambdas.
  3. [iOS] 修 复 了 “Have the same architectures (arm64) and can’t be in the same fat output file”;
  4. [iOS] Demo uses outdated UIAlertView implementations instead of UIAlertController implementations;
  5. [iOS] resolved two compile errors on XCode12.5.1 due to class name refactoring in the iOS SDK project.
  6. [Server] Upgrade the Log4j logging framework in the server Demo to the latest Log4j2;
  7. [Server] The server controls whether to generate a send timestamp for each message (which can be used to assist with message ordering logic on the client, etc.).

Vii. Related links

To download the MobileIMSDK, click download