Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
R res
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Jira
    • Jira
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • 洪键炜
  • res
  • Wiki
  • Home

Home · Changes

Page history
iOS 架构简介 authored Aug 29, 2019 by 洪键炜's avatar 洪键炜
Hide whitespace changes
Inline Side-by-side
Showing with 135 additions and 0 deletions
+135 -0
  • home.md home.md +135 -0
  • No files found.
home.md 0 → 100644
View page @ 2f6adee3
# 内容
[toc]
---
## 数货4.0
### 项目架构
#### 底层基础设计
##### 架构--[Redux](https://github.com/ReSwift/ReSwift)
###### [基础设计图](http://assets.processon.com/chart_image/5d6661eee4b06e4919248821.png)
![image](http://assets.processon.com/chart_image/5d6661eee4b06e4919248821.png)
###### [模块依赖图](http://assets.processon.com/chart_image/55c75aace4b08136904c8006.png)
![image](http://assets.processon.com/chart_image/55c75aace4b08136904c8006.png)
#### 主要业务逻辑设计
### SDK
#### [私有pods仓库地址](http://git.imagedt.com/ios_framwork/Specs/tree/master/BashoKit)
#### [时序图](http://assets.processon.com/chart_image/5d567ac0e4b0869fa417747e.png)
![image](http://assets.processon.com/chart_image/5d567ac0e4b0869fa417747e.png)
#### 测试方式
1. 运行basho工程,将target切换到bashoKitTest
2. 使.gitlab-ci.yml运行kit.sh脚本,待打包结束后[找到对应的包](http://10.196.51.253:8080/app/idt-basho-kit/iOS/)
### Deeplink
#### [接口文档](http://git.imagedt.com/imageDT_app/idt-basho-deeplink)
#### 测试方式
* 运行basho工程,将target切换到bashoKitTest
### App工程:[idt-basho-iOS link](http://git.imagedt.com/imageDT_app/idt-basho-iOS)
### 自动化集成
* 自动化集成采用gitlab-runner-CI-shell方式打包
* 打包文件:
别名 | 作用 | 文件相对路径
--|:--|:--
CI脚本 | 由gitlab-runner执行一个服务,接收gitlab的信息,自动执行相关脚本 | basho/.gitlab-ci.yml |
环境初始化配置脚本 | 初始化其它脚本需要的相关信息到shell进程中 | basho/job/config.sh |
工程环境变量脚本 | 根据config初始化的信息,选择工程编译的xcconfig | basho/job/xcconfig.sh |
编译打包脚本 | 生成archive文件和dSYM文件,将生成的文件移动到打包机器上的目录下 /usr/local/var/www/app/idt-basho/iOS/,将生成的ipa上传到fir | basho/idt-basho-app-iOS/AutoArchiveJob/theci.sh
CI打包接口脚本 | 供gitlab-ci调用,实际上是调用编译打包脚本 | basho/job/archive.sh |
打标签脚本 | 执行git tag ; git push tag 命令 | basho/job/tags.sh |
build号确认脚本 | 根据版本号git分支打包次数,自动生成对应build号 | basho/job/version.sh |
sdk集成脚本 | 自动拉取SDK工程(idt-basho-iOS-kit),将编译后的framework替换到到工程中,并推送到ios_framwork/Specs | basho/job/kit.sh |
---
## 数货3.0
### App工程 [idt-banana-app-iOS link](http://git.imagedt.com/imageDT_app/idt-banana-app-iOS)
### SDK工程 [idt-banana-sdk-iOS link](http://git.imagedt.com/imageDT_app/idt-banana-sdk-iOS)
### [项目架构](http://assets.processon.com/chart_image/59924daee4b06df7265a93e2.png)
![image](http://assets.processon.com/chart_image/59924daee4b06df7265a93e2.png)
#### 简要类名介绍
类名(或通用名) | 描述 | 备注
--|:--|:--
IdtAppUI | 全局管理SB、VC、Nav、Window的类 |
IdtShelfSFAController | 暴露SDK入口方法
IdtSFAController | 管理SFA相关逻辑实现
IdtAppController | 全局的数据逻辑管理
BI | 切割的数据处理逻辑类块 | 使用来多个BO和API来操作数据
BO | 切割的本地数据处理逻辑类块 | 使用多个DAO来操作数据,不包含网络请求
DAO | 独立的本地数据库操作 | 使用到了内存缓存来解决fmdb慢的问题,需要注意数据同步的问题。
API | 独立的网络数据处理逻辑类块
IdtActionBI | Action计划逻辑封装类 |
IdtUploadManager | 后台上传封装类
CameraViewController | 相机页面 |
IdtGalleryVC | 相册页面 | 使用了vs.uploadType属性来控制是否等待上传结束的逻辑、使用了netCheckDialog方法来控制上传等待的逻辑。
IdtTaskAddViewController | 货架添加页面 |
IdtTaskListViewController | 货架列表页面 |
### 项目应用
项目 | 方式 | 备注
--|:--|:--
联合利华 | SDK | 分支名: imagedt_ring_unilever
---
## Hvenatoria立白离线识别
### App工程 [idt-hvenatoria-iOS link](http://git.imagedt.com/imageDT_app/idt-hvenatoria)
#### [流程相关依赖图示](http://assets.processon.com/chart_image/570335bbe4b04878f83ef2df.png)
![image](http://assets.processon.com/chart_image/570335bbe4b04878f83ef2df.png)
---
## 其它
### PMG-3643 【移动开发】iOS_优化提交空答案题目逻辑
这里提交相机答案,进行图片是否为0的硬判断,需要调整成判断题目的最小图片数量
Clone repository
  • Home