PrepareDevice初始化过程分析

prepareDevice

一丶 MHCContext.initContext

1.DBSContext.clear()清除本地设备信息;
2.LocalWrapper,RemoteWrapper赋值给DBSContext.LocalContext,DBSContext.RemoteContext()
3.ProxyManager.setProxy()设置网络代理
4.SocketClient.setOnInvokeCallBack()设置业务回调;
5.新建CallBack对象deleteFinger

二丶MHCContext.initDataBase()

  1. loadSysInfo(),读取数据库smsysteminfo这张表,尤其是监控服务器,和业务服务器地址等关键信息;
  2. loadCtrolParm(),读取数据库pacontrolparam这张表,读取控制信息并利用反射的方式赋值给ControlParam这个类,尤其是紧急开箱密码;
  3. loadTerminalInfo(),读取数据库tbterminal表读取设备号,DevinceNo,副柜数量,格口数量,registerFlag和terminalStatus ->检查是否存在tbterminal表,检查terminalNo字段是否存在,检查registerFlag是否为2注册不通过。

三丶loadMainData()

  1. PackManager.getPackageInfo,获取程序版本信息,并把电话号码,DBSContext.terminalUid等信息,更新到MainModel。
  2. MHCContext.delteFinger = new CallBack(),在callback回调中删除全部指纹,或者根据postManID删除指定员工的id;
  3. DBSContext.onDeviceOnUnregister = new CallBack();删除在箱订单,清楚设备信息,清楚上传队列,清楚格口信息,清楚副柜信息;-》删除指纹,重新载入数据库;
  4. 设置网络状态回调,SocketClient.setOnStateChanged,SocketClient.start(),开始连接网络,网络连接成功后,DBSContext.onDeviceSign()去签到,
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。 O...
    我想起个好名字阅读 10,792评论 0 9
  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 32,124评论 2 89
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,378评论 25 709
  • 传说远古时代,在遥远的北海有一条特别大的雨,他的名字叫做坤坤生宽体千里至于生长,只有多少,那就没人知道了。 后来...
    徐宏亮妈妈1阅读 3,122评论 0 0
  • 村上春树说:「因为我不想跑步,所以才要去跑步。」 深以为然。 一个人所有的改变都源于自己,你想要变瘦,想要变得更好...
    钟春华简书阅读 2,944评论 0 1