Class Diagram
2016-12-16 11:36:47 0 举报
登录查看完整内容
类图(Class Diagram)是一种用于描述系统结构和关系的静态图形表示方法。它展示了系统中的类、接口、属性、方法和关系,以及它们之间的依赖和实现。类图中的每个元素都代表一个对象或概念,通过连接线表示它们之间的关系。类图的主要目的是帮助开发人员更好地理解系统的组成部分,以及它们如何协同工作以实现系统的功能。类图通常与其他UML图(如用例图、顺序图和活动图)一起使用,以提供对系统的全面视图。
作者其他创作
大纲/内容
confirm page
RADolphinState
onHotUpdateComplete
验收
install apk
server
appVerresVerbuildno
提bug单进入bug修改流程
客户端
工作计划版本计划
file
评审意见
解压
热更
路径扁平化
软更
big version update
confirm
ms验收
RAWorldMap
提交debug
hotfixed
提bug单
RAUpdateManager
_decompressFile
RAUpdateVersionState
dochecking
RAAWorldBuilding
Msg_AppUpdate_SoftSkip
RAWorldBuildingBase
open url
GamePrecedure:initScriptEngine
提交mileStone
1、启动2个lua虚拟机,一个做更新,一个做逻辑,保留重启
成功
url
false
_updateResource
RAGrayUpdateState
doGrayChecking
clearCache
SDKManager
checkGrayUpdate
lua重启
server data cache
WorldMessageCenter
条件判定
发起bug流程
执行后操作
end
RAWorldBuilding
- methodA()- methodB()
- attributeA- attributeB
包
resUrl: 资源更新目录地址updateMode: 更新模式(0:标准强更,1:建议软更)version:资源版本号custom:自动有数据同步billboard:登录前公告相关channelFlag: 渠道标记iosReview: 是否审核服AppNotice: 大版本公告maxVersion:当前patch的最高版本号appUrl: app版本更新路径appMd5: app文件md5值urlMode: 地址模式,appUrl.xml文件中配置的verFiles: 版本记录信息silent: 静默模式
info
1、RAUpdateManager功能太强大,包括流程分析,数据处理,http请求和download相关。2、扇出过小,函数的调用层次可能过多,这样不利于程序阅读和函数结构的分析。3、逻辑混乱,前更,热更,软更,灰度逻辑参杂,不利于理解。4、处理流程过长,代码耦合度高。5、混乱的版本号。
net
>>
cancelRequest()onTimeout()_getUpdateInfo()onGetUpdateInfo()_removeSchedule()
初始化引擎初始化sdk清理缓存(文件+userDefault)加载配置(txt csv 18+)初始化 downloader httpclient脚本初始化loginServerset Search pathpreload loading res
异常
策划
record
_loadRecord()_addRecord()_saveRecord()
RAWorldBuildingManager
修改bug
修改
checkAppUpdate
update
html报文{ \"msg\": \"{\\\"mode\\\
Msg_HotUpdate_Recheck
引擎初始化
失败
玩家
doUpdate()
合并debug
MSG_HotUpdate_CheckMsg_HotUpdate_StartMsg_HotUpdate_FinishCheckMsg_HotUpdate_ExitMsg_Cnfirm_HotUpdateMsg_Confirm_RetryUpdateMsg_Delay_RetryUpdateMsg_Confirm_RetryConnectMsg_Sys_ResetLuaMsg_AppUpdate_SoftSkip
下载路径解压路径目录结构files/Asserts/RARes/1.4.101.8
流程节结束
1. 切换用户2. 登出3. 网络异常4. 自动修复
服务器
需求调整
合并milestone
loading Scene
preloadgame res
RAVersion
VER_MAJORVER_MINORVER_APPVER_PATCH
operator=operator<operator>get&set
_parseUpdateInfo
fin
other
bigVersionUpdate
auth server
m_sSavePathm_sRecordPathm_sNewResVerm_iNewBuildNos_iMaxRetryDownloadTimesm_iTargetFileNumm_iDownloadCounterm_iRedownloadTimesm_lTotalSizem_pRequestm_pListenerm_JsonReaderm_sResUrlm_bHasConfirmedm_bIsGraym_bIsSyncingm_bIsDownloadingm_bShouldRetrym_bSilentUpdatem_bHasUpdatedm_bIsFirstDownloadm_bAllowSkipm_bRecordLoaded
_checkAppUpdate()_checkResourceUpdate()_clear()_exit()reset()getNewResVer()getBytesSizeStr()_parseUpdateInfo()_comaresVersion()_decompressFile()_getVersionPath()_get_last_num_from_version()_updateApp()_isInFileMap()tryClearCachedFiles()doClearingCachedFiles()doChecking()doGrayChecking()doGrayDownloading()doSyncVersion()doDownLoading()doRetry()skipUpdate()bigVersionUpdate()skipSoftAppUpdate()restart()enterForeGround()_updateResource()_error()_finishCheck()downloaded()downloadFailed()downloadProgress()_retryDownloading()_calDownloadedSize()_prepareDownloading()_finishDownloading()_downgradeVersion()_checkIfFinished()_updateProgress()
资源
RAWorldBuildingPool
RAUpdateListener
onGetUpdateInfo
fullpath(暂时不动)
放弃重启lua虚拟机,reload package脚本
启动游戏
RAUpdateVersinState
+ m_pParamList+ m_bDelayRetry = 网络配置相关- m_fElapsed
+ Enter()+ Execute()+ Exit()+ onReveiveMessage()+ startDelayRetry()+ handleMessage()+ onMessageboxEnter()- _onComplete()- _onFinsishCheck()- _updateProgress()
_downgradeVersion
RALoginPrecedure
afterGCloudUpdate
softAppUpdate
res update
hot update
QA
重新拉取
monster
Varible.txtRetryInterval
app
升级
sdklogin
player
tryEnterGame
exit()
_getUpdateInfo
skipSoftAppUpdate
receive resp
httpupdateVersion
需求评审
enter game
_updateApp
测试
LoadSerachPath
更新完成,重新加载版本号
降级
流程结束
RAWorldScene
silent update
脚本路径设置RALoginProcess:initonVersionUpdateComplete
RAWorldBuildingInfo
Varible.txtMaxRetryDownloadTimes
afterGrayGCloudUpdate
lua res reloadresetSearchPath
CCBReader:purgeCacheDataCCSpriteFrameCacheupdate serach pathGamePrecedure:purgeCacheDataRALoginPrecedure:releaseLoadingResource
位置
RADolphinGrayState
yes
RAWorldProtoHandler
grayGCloudUpdate
lua运行前置条件
updateVersion
func
tryClearCachedFiles()doClearingCachedFiles()doChecking()doGrayChecking()doGrayDownloading()doSyncVersion()doDownLoading()doRetry()skipUpdate()bigVersionUpdate()skipSoftAppUpdate()restart()enterForeGround()_updateResource()_error()_finishCheck()
功能验收
发起需求
RAVersionNoticePage
版本更新通知界面
loadingProcess
updateNotifyPage
grayUpdate
获取当前版本版本号,添加searchPath
app update
工作量评估
cleanup andreloadSearchPach
skip
init
提交milestone
强更
userdefault
sdk
开发
gcloudUpdate()
download
灰度
热更不要更新热更登陆流程跟新必须包含更新调用
decompress
data
getNewResVer()getBytesSizeStr()_parseUpdateInfo()_comaresVersion()_decompressFile()_getVersionPath()_get_last_num_from_version()_updateApp()_isInFileMap()
1.path路径2.边玩边下路径3.IPa apk
初始化内容的整理,迁移
getCurBuildVersion()
downloadapk
downloaded()downloadFailed()downloadProgress()_retryDownloading()_calDownloadedSize()_prepareDownloading()_finishDownloading()_downgradeVersion()_checkIfFinished()_updateProgress()
no update
MSG_HotUpdate_Complete
soft app update
onStartGameBtn
RAWorldBuildingFactory
trunk开发
RAWorldTouch
RALoadSceneState
Execute
联盟
getCurResVersion()
0 条评论
回复 删除
下一页