通信解码模块的思考
通信解码部分,手机的GPS和广播模块获取数据后,根据ID拿到需要的数据段,这里我调用了中间件商提供的解码打包程序,一个RGDecode.dll文件,在这个部分其实一个回调的过程,当RGDecode.dll接受到数据后会按不同业务进行数据打包,然后会通知客户端程序,客户端程序响应后会发送一个标识ID,从RGDecode.dll拿到需要的数据。
具体的数据协议是,一个状态由20个字节表现,一个数据包包含6个状态,客户端会定时去获取数据包,然后对包进行解码,20个状态字节包含地图模式,城市,级别,坐标,交通路况信息(红,黄,绿),天气预报,交通时间,股票实时信息(预扩展)。解码过程就是按照数据协议来初始化这些数据结构体。
由于现在程序的通讯解码部分全部整合在客户段程序里,不利于扩展和第三方应用,现在的任务就是将程序中的通讯部分剥离出来,做成一个philo.dll,它直接与RGDecode.dll进行交互,客户端程序只与philo.dll交互, philo.dll里做扩展业务的接口,股票,财经等,只要服务器可以提供的业务都可以把接口做好。
思路想通了,剩下的就是实现了,哎,奥运会前应该是轻松不了了