# CC通信
**Repository Path**: thb2008/cc
## Basic Information
- **Project Name**: CC通信
- **Description**: 聊天通信
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2021-07-12
- **Last Updated**: 2023-09-22
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# CC_5.0
> lesso cc 5.0
## 快速起步
``` bash
# 安装依赖(安装依赖后自动执行重建原生依赖脚本,附带处理npm配置、覆盖补丁文件、复制electron_xp二进制文件)
npm install
# 运行开发环境
npm start / npm run dev
# 编译打包win安装文件
npm run build:win
# 编译打包win升级文件
npm run build:win_update
# 编译打包mac安装文件
npm run build:mac
```
## 安装依赖注意事项
### Windows 环境
1.安装 node 编译工具
```bash
npm i -g node-gyp node-pre-gyp
```
2.安装 `windows-build-tools` (需要以管理员模式运行命令行)
```bash
# win7
set "PYTHON_MIRROR=http://npm.taobao.org/mirrors/python" && npm install --global --production windows-build-tools --vs2015
# win10
set "PYTHON_MIRROR=http://npm.taobao.org/mirrors/python" && npm install --global --production windows-build-tools
# 注意:
# win10安装后需要打开'Visual Studio Installer',
# 选择'Visual Studio 15 生成工具 2017'后点击修改,
# 勾选'适用于桌面的 VC++ 2015.3 v14.00 (v140) 工具集'后点击确定
```
3.将项目中`builder_binaries`文件夹中的压缩包解压到指定位置(请查阅`builder_binaries/README.md`)
4.执行 `npm install` 命令安装依赖,`npm install`命令会附带执行`.electron-vue/set-platform-npmrc.js`和`extras/builder/copy_patch_files.js`脚本,用于处理npm配置、覆盖补丁文件、复制electron_xp二进制文件
### MacOS 环境
1.安装 node 编译工具
```bash
npm i -g node-gyp node-pre-gyp
```
2.安装`XCode Command Line Tools`
```bash
#执行命令安装
xcode-select --install
```
3.执行 `npm install` 命令安装依赖,`npm install`命令会附带执行`.electron-vue/set-platform-npmrc.js`和`extras/builder/copy_patch_files.js`脚本,用于处理npm配置、覆盖补丁文件、复制electron_xp二进制文件
## VSCode 调试主进程方法
1.在主进程代码(`src/main`)中加入断点。
2.在 VSCode 里面,点击“调试”图标。选择`Electron_Main`配置,点击“调试并运行”
## 打包升级方法
> 必须在【全英文】路径才能正常打包 !!!
> 源码编译后会生成main.jsc文件,.jsc文件必须与用于编译它的相同Node.js版本一起运行(必须是相同的架构)。因此各系统编译生成的.jsc只能在当前系统使用。
### 压缩包目录结构
```
cc_release.zip
|-- win win文件目录
| |-- package 安装文件目录
| | |-- lessocc.exe
| |-- upgrade 升级文件目录
| | |-- CC_5.0-1.0.0.exe
| | |-- latest.yml
|-- mac mac文件目录
| |-- package 安装文件目录
| | |-- lessocc.dmg
| |-- upgrade 升级文件目录
| | |-- CC_5.0-1.0.0-mac.zip
| | |-- latest-mac.yml
```
### win打包
1.运行`npm run build:win`生成安装文件
2.将`build`目录下生成的exe文件重命名为`lessocc.exe`,然后复制到压缩包`win/package`目录
3.运行`npm run build:win_update`生成升级文件
4.将`build`目录下生成生成的exe和`latest.yml`复制到压缩包`win/upgrade`目录
### mac打包
> mac 打包启用应用公证操作,公证时间大约需要15分钟。公证后可以解决macOS 11重启后应用损坏问题。
> 应用公证开关在 builder_config/mac.conf.js 中的 isNotarize 变量
> 应用公证脚本在 builder_config/notarize.js ,应用mac权限配置文件在 builder_config/entitlements.mac.plist
1.运行`npm run build:mac`生成安装文件
2.将`build`目录下生成生成的dmg文件重命名为`lessocc.dmg`,然后复制到压缩包`mac/package`目录
3.将`build`目录下生成生成的zip和`latest.yml`复制到压缩包`mac/upgrade`目录
### 多租户打包
1.在`extras/multi_icon/`目录下新建文件夹,文件夹名称为租户名
2.该文件夹目录下创建`assets_icon/` `build_icon/` `static_icon/` 三个文件夹,并且放置对应需要替换的图标
3.修改`src/main/define/tenant.js`中的`tenant_options`对象,按照格式填写新租户对应的租户信息
4.修改`builder_config/tenant.conf.js`中的`tenant_options`对象,按照格式填写新租户对应的打包信息
5.修改`package.json`的`script`对象,新增以下命令,通过以下命令可以运行对应租户配置的打包
```
"build:win_[租户名]": "cross-env APP_AREA=[租户名] npm run build:win",
"build:win_update_[租户名]": "cross-env APP_AREA=[租户名] npm run build:win_update",
"build:mac_[租户名]": "cross-env APP_AREA=[租户名] npm run build:mac"
```
## 应用图标生成方法
### Mac 图标
> 以下步骤需要在mac下执行
1.准备一个 1024 * 1024 的png图片,假设名字为 icon.png
2.命令行 ` mkdir tmp.iconset`,创建一个临时目录存放不同大小的图片
3.把原图片转为不同大小的图片,并放入上面的临时目录
```bash
#全部拷贝到命令行回车执行,执行结束之后去tmp.iconset查看十张图片是否生成好
sips -z 16 16 icon.png --out tmp.iconset/icon_16x16.png
sips -z 32 32 icon.png --out tmp.iconset/icon_16x16@2x.png
sips -z 32 32 icon.png --out tmp.iconset/icon_32x32.png
sips -z 64 64 icon.png --out tmp.iconset/icon_32x32@2x.png
sips -z 128 128 icon.png --out tmp.iconset/icon_128x128.png
sips -z 256 256 icon.png --out tmp.iconset/icon_128x128@2x.png
sips -z 256 256 icon.png --out tmp.iconset/icon_256x256.png
sips -z 512 512 icon.png --out tmp.iconset/icon_256x256@2x.png
sips -z 512 512 icon.png --out tmp.iconset/icon_512x512.png
sips -z 1024 1024 icon.png --out tmp.iconset/icon_512x512@2x.png
```
4.通过iconutil生成icns文件
```bash
iconutil -c icns tmp.iconset -o icon.icns
```
### Windows 图标
> 以下步骤可以在win/mac环境下执行
1.安装[imagemagick](http://www.imagemagick.org/script/download.php)
2.按尺寸导出多个PNG文件
```
icon_16.png
icon_32.png
icon_48.png
icon_128.png
icon_256.png
icon_512.png
```
3.使用命令生成ico
```bash
convert icon_*.png icon.ico
```