Note: protocol version为彼此沟通方式的版本,app和device若是不同的protocol version则无法沟通
法1不使用protocol version来决定app或device是否要升级:
if Min(app相容device version) > deviceVersion {//app相容device或强制device升级} if Max(app相容device version) < deviceVersion {//强制app 升级}
问题: 若app相容device version是写死在client端,在app出了1.0.4版以后,device端出了1.0.0.8版本,其protocol version仍是4,则会导致提前强制升级
若要避免强制升级,只能够在server上储存app相容device version,来让app确认自己是否需要升级
法2使用protocol version来决定app或device是否要升级
if (app的ProtocolVersion) > deviceProtocolVersion {// app相容device或强制device升级}if (app的ProtocolVersion) < deviceProtocolVersion {// 强制app 升级}
优点:
不需要将protocol version存在server上,就能够判断device和app现在是否能够沟通