时间:5.30晚,9:30 ~ 11:30
主题:讨论android app与服务器之间数据同步的技术选型与实现
与会人:陈兆庭,黄志鹏,吴雪晴
讨论内容:
-
大体分析
关于数据同步,整体上有两部分,用户身份认证与数据同步。我们暂时没有查用户身份认证的问题,而主要查找了数据同步问题的解决方案。
同步问题,大致分这几个部分:服务器端的技术选型,android端数据选型,数据传输协议,同步策略。 -
服务器端技术选型
关于语言,因为大家没什么兴趣再学php python了,而且java是安卓开发的常规选择、资料比较多,所以我们还是选择了java。
要用java,就几乎必然使用servlet。所以我们还是按照常规,选择servlet容器tomcat提供服务。
对于数据库选型,我们同样选择了常规的mysql。
关于如何存储用户数据,我们目前的想法是为每个用户建立分立的目录,在目录下类似安卓端,创建用户自己的数据库,保存用户的多媒体文件。 -
安卓端数据选型
google有一个叫sync adapter的框架,可以支持后台自动同步和手动同步,并且支持认证。当然具体的认证方式和同步通信方式还是要我们自己写,但是这毕竟已经方便多了。 -
数据传输协议
由于tomcat对http有较好的封装,所以我们打算使用http协议传输数据。
对于数据库中各个表项的多个键值使用xml封装,对于多媒体文件分割成多个小块分别发送。(想用ftp 23333 我凭什么要自己写一个文件传输协议(这里只是写博客的人突然皮了一下))更具体的协议没有确定。 -
同步策略
放在最后面是因为我们没有讨论出来。
我们想了很多策略,如用标志位表示同步状态、用timestamp表示最后同步时间等,但似乎总是有bug。因此我们决定查一查资料再决定。 -
(不知道为什么就随便)分(了个)工
(写博客的人觉得三个人不足以完成这么艰巨的任务,想弄几个人来帮忙)
陈兆庭:负责服务器端数据库部分的搭建、代码编写
黄志鹏:负责服务器端网络、通讯部分的搭建、代码编写
吴雪晴:负责安卓端的代码编写