网站与客户端(Android、IOS)之间的数据交换、传输相关问题
小弟准备做毕业设计项目,
项目涉及到开发web网站、Android和IOS移动客户端,
由于初次接触开发移动客户端,
对其很多知识、技术并不了解,
特来请教各位,先行谢过各位。
网站采用PHP框架yii开发、移动端两种语言就不说了,
移动客户端与网站服务端的数据交换、传输用什么技术?
来着之前,小弟百度过,得知用XML、JSON技术,
如何在两种语言中如何实现?请各位大神简单说明下
还有这两种技术有什么优、劣,也做个简单说明?
除此之外,还有没有别的技术?
如果涉及到聊天室、实时显示的功能用哪些技术?
本人问题较多,请莫怪
再次感谢各位大神!
Answers
楼主提出的问题很庞大,但也很简单。我就粗略回答你一下,具体的内容楼主回去可以慢慢搜索。
后端
客户端向服务器请求数据采用的方式就是http,数据格式用xml或者json问题都不大,但是对于初学者还是json比较容易上手一些,xml显得太重型了。不同语言都有这两种数据的解析库,其中javascript处理json最简单了,一个JSON.parse函数就行。
数据请求建议做成RESTful风格的,这样可以照顾来自不同客户端的请求,大多数开放平台的接口用的都是RESTful风格。
关于聊天室和实施显示这个东西嘛。。。Ajax的long pulling知道吗?不知道的话,那“请求超时”这个词听说过吧。如果我把超时时间设置的很久,或者干脆取消,这时客户端向服务器发送数据请求,服务器就先把这个请求放在一边,客户端就在那里等着,服务器在有数据进来的时候才返回给客户端。long pulling的意思差不多就是这样,如果做web开发的话有个现成的库 socket.io 把这些功能都封装起来了,你可以参考一下。
客户端
楼主提出的需求是跨三个平台,那我就以一个没有做过移动端开发的人给你提供几个不成熟的方案。
做一个WebApp
这个是最简单,最省力的方法,但前提是要对自适应布局等css的运用要很熟练,也就是说前端功底要扎实。页面最好做成SPA(Single Page App),单页面,不然每次点击链接整个页面都要刷新一次效果不好。做好之后再封装成本地app, android 的网站上有相关资料。
用跨手机平台的技术框架
使用如QT或者 PhoneGap 这些技术,可以使程序运行在不同的移动终端。但是我没有相关开发经验,所以相关内容还需楼主自行Google。
为每个平台单独制作App
这样你可能需要找几个术业有专攻的小伙伴来帮你了。