# echatim-client-cpp-core **Repository Path**: dzqmeiji/echatim-client-cpp-core ## Basic Information - **Project Name**: echatim-client-cpp-core - **Description**: 使用c++编写的E聊SDK客户端核心库代码. 支持Windows, Linux, Mac, Android, iOS等平台, 支持c/cpp,c#,python,java等语言接入 - **Primary Language**: C++ - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2020-07-04 - **Last Updated**: 2022-05-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 项目说明 该项目是E聊客户端通讯核心源码, 支持windows,linux,android,ios,mac 等应用层开发语言,现阶段完成通讯核心部分,文件上传. API演示Demo项目 [echatim-client-cpp-api-demo](https://gitee.com/dzqmeiji/echatim-client-cpp-api-demo) 第三方依赖库编译方式 [echatim-client-cpp-core-thirdparty](https://gitee.com/dzqmeiji/echatim-client-cpp-core-thirdparty) ![image](https://gitee.com/dzqmeiji/echatim-resource/raw/master/pics/readme/ui_api_demo_overall.png) 开发IDE: CLion 2018.3.4(windows开发环境下Toolchains使用 Microsoft Visual Studio\2017\BuildTools, mac开发环境下使用Clang, linux开发环境下使用gcc) 主要语言: C++11 环境要求: 安装docker(若需交叉编译windows, linux, android等平台, 若不使用交叉编译,可不需要安装) 构建docker镜像时需要linux环境的jdk: 从https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html 下载jdk-8u261-linux-x64.tar.gz到源码目录下, 执行 tar -xvf jdk-8u261-linux-x64.tar.gz 解压,并重命名为 jdk1.8.0_121 文件. ### 编译方式(建议使用苹果OSX系统, 以下命令在OSX系统下执行) (1). docker交叉编译windows平台动态库和exe执行文件(x86_64) ```bash ./build.sh WINDOWS ``` (2). docker交叉编译linux平台动态库和执行文件(x86_64) ```bash ./build.sh LINUX ``` (3). docker交叉编译anroid平台动态库和执行文件(armeabiv-v7a) ```bash ./build.sh ANDROID ``` (4). 编译MAC平台动态库和执行文件(x86_64) ```bash ./build.sh MAC ``` 以上命令编译出echatim可执行文件, echatimsdk 动态库, echatimsdkjni jni动态库三个文件. ### 使用说明 (1) echatim echatim.exe 可以用于E聊消息协议的接受测试. 使用方式: ```asm 1. 启动echatim(使用默认参数) echatim.exe 2. 启动echatim(指定参数, 使用线上服务器地址, 登录用户为admin) echatim.exe --with-config="{\"host\":\"api.echatim.cn\",\"httpPort\":58082,\"socketPort\":59092,\"key\":\"TSDKTEST00001\",\"secret\":\"\",\"apiTransport\":\"HTTP\",\"loginAuid\":\"admin\",\"loginToken\":\"admin\"}" ```