iOS编译运行指引

WorkPlus Lite iOS端使用的编码语言为OC

1. 编译与运行项目

1.1 Cocoapods 安装

WorkPlus IOS项目使用Cocoapods,请先安装Cocoapods

sudo gem install -n /usr/local/bin cocoapods

项目当前使用的pod版本是 1.8.4

1.2 编译项目

pod注意事项

WorkPlus Lite iOS客户端使用了Gitee做Pod公开仓库源,请确保你的公钥已经在GITEE上注册。

访问 https://gitee.com/help/articles/4181 以了解如何操作

进入项目主目录:

pod install --verbose

出现如下字样,表明编译项目成功

-> Pod installation complete! There are 32 dependencies from the Podfile and 35 total pods installed.

1.3 运行项目

项目当前使用XCode版本: Xcode11.7

XCode适配说明

WorkPlus Lite项目当前未适配XCode 12,此项工作仍在进行中

请使用Xcode打开项目,选择WorkPlus,Run就可以运行项目

1.4 关键配置文件

项目的关键配置文件路径为

Resources/Config/BeeWorks.json

{
    "config": {
        # API URL ,后台API地址
        "apiUrl": "http://all.test.foreverht.com:7081/v1/",
      
        # IOS Plist 下载地址
        "iosDownloadUrl": "https://test.workplus.io:9443/man/workplus/public/releases/atwork/download/ios",
      
        # 域ID
        "domainId": "atwork",
      
        # APP中版权信息配置
        "copyright": {
            "companyName": "WorkPlus(测试)",
            "companyName_en": "WorkPlus(test)",
            "companyName_hant": "WorkPlus(測試)",
            "companyCopyright": "深圳恒拓高科信息技术有限公司",
            "companyCopyright_en": "Forever High Tech Information Technology Co., Ltd",
            "companyCopyright_hant": "深圳恒拓高科信息技術有限公司",
            "companyUrl": "www.workplus.io",
            "companyLoginIcon": "about_logo",
            "companyAboutIcon": "about_logo"
        },

        #QQ及微信分享ID设置
        "share": {
            "qq": {
                "enabled": true,
                "appId": "1105486760"
            },
            "weixin": {
                "enabled": true,
                "appId": "wxbd606d50b3dcbb3f"
            }
        },

     # 语音视频,(全时云或声网配置)
        "meeting": {
            "sdk": "Agora",
            "Agora": {
                "appId": "c7270fd484784f63bc8301e387da8082"
            }
        },
 
        #Bugly相关配置 (统计异常)
        "bugly": {
            "appId": "665031f140",
            "channelId": "TestVoice"
        },

        #讯飞配置(语音转文字)
        "xfyun": {
            "enabled": true,
            "ios": {
                "appId": "59360fbe"
            }
        },
        #翻译配置
        "translation": {
            "enabled": true,
            "type": "Google",
            "google": {
                "appId": "",
                "appSecret": "AIzaSyBi4tzGpFlqR_E_wELtYdPVDHi5ZrZW1rw"
            }
        },
        #高德地图配置
        "amap": {
            "ios": {
                "appKey": "b5d7d4fc3a79d9848e644d6bdbeac575"
            }
        }
    }
}

如上配置所示,修改项目的Api以及domainId等关键配置,就可以尝试启动运行WorkPlus Lite.

2. 系统结构文档

 -Atwork2
 -www
 
 -Main (主代码目录)
  -Contact (模块)
    -View  (模块下的Views)
    -Model (模型)
    -Service (服务)
    -ViewController (页面)
    -DB (数据表)
    -Repository (仓储)
    -Net (网络)
    
  -Share (共享模块)
  
 -Expand (扩展代码目录)
    
  -Utils (工具目录)
  -Repository (仓储支持)
 
 -Classes (2.0遗留目录)
 
 -Resources (资源文件目录)

Repository(仓储)是指数据库操作

注意:

Classes这个目录为WorkPlus 2.0的目录,新的类不再放置在这个目录下,但旧的未有变更的功能暂时保持不变更,后续采用循序渐进的方式迁移此目录下的代码

3 第三方依赖说明

WorkPlus IOS项目使用了一些第三方插件或平台服务,列为如下

插件或服务名称描述开源或免费依赖方式
CocoaLumberjack记录日志的组件开源Pod依赖
AMapLocation高德地图,用于定位免费Pod依赖
AFNetworking网络框架开源Pod依赖
FMDB/SQLCipher数据库框架开源Pod依赖
SDWebImage图片缓存框架开源Pod依赖
SVProgressHUD一个弹出框架开源Pod依赖
AGEmojiKeyboard表情框架开源Pod依赖
JSBadgeView数字红点框架开源Pod依赖
Masonry自动布局框架开源Pod依赖
CordovaCordova框架开源Pod依赖
SSZipArchiveZIP压缩解压框架开源Pod依赖
FLAnimatedImageGif图片框架开源Pod依赖
DZNEmptyDataSet空白页面框架开源Pod依赖
友盟友盟免费服务类库依赖
BuglyBug记录免费服务类库依赖
QQ SDK分享到QQ免费服务类库依赖
讯飞语音转文本免费服务类库依赖