网站与客户端(Android、IOS)之间的数据交换、传输相关问题

小弟准备做毕业设计项目,

项目涉及到开发web网站、Android和IOS移动客户端,

由于初次接触开发移动客户端,

对其很多知识、技术并不了解,

特来请教各位,先行谢过各位。

网站采用PHP框架yii开发、移动端两种语言就不说了,

移动客户端与网站服务端的数据交换、传输用什么技术?

来着之前,小弟百度过,得知用XML、JSON技术,

如何在两种语言中如何实现?请各位大神简单说明下

还有这两种技术有什么优、劣,也做个简单说明?

除此之外,还有没有别的技术?

如果涉及到聊天室、实时显示的功能用哪些技术?

本人问题较多,请莫怪

再次感谢各位大神!

楼主提出的问题很庞大,但也很简单。我就粗略回答你一下,具体的内容楼主回去可以慢慢搜索。

后端

客户端向服务器请求数据采用的方式就是http,数据格式用xml或者json问题都不大,但是对于初学者还是json比较容易上手一些,xml显得太重型了。不同语言都有这两种数据的解析库,其中javascript处理json最简单了,一个JSON.parse函数就行。

数据请求建议做成RESTful风格的,这样可以照顾来自不同客户端的请求,大多数开放平台的接口用的都是RESTful风格。

关于聊天室和实施显示这个东西嘛。。。Ajax的long pulling知道吗?不知道的话,那“请求超时”这个词听说过吧。如果我把超时时间设置的很久,或者干脆取消,这时客户端向服务器发送数据请求,服务器就先把这个请求放在一边,客户端就在那里等着,服务器在有数据进来的时候才返回给客户端。long pulling的意思差不多就是这样,如果做web开发的话有个现成的库socket.io把这些功能都封装起来了,你可以参考一下。

客户端

楼主提出的需求是跨三个平台,那我就以一个没有做过移动端开发的人给你提供几个不成熟的方案。

做一个WebApp

这个是最简单,最省力的方法,但前提是要对自适应布局等css的运用要很熟练,也就是说前端功底要扎实。页面最好做成SPASingle Page App),单页面,不然每次点击链接整个页面都要刷新一次效果不好。做好之后再封装成本地app,android的网站上有相关资料。

用跨手机平台的技术框架

使用如QT或者PhoneGap这些技术,可以使程序运行在不同的移动终端。但是我没有相关开发经验,所以相关内容还需楼主自行Google。

为每个平台单独制作App

这样你可能需要找几个术业有专攻的小伙伴来帮你了。

1,xml和json不是语言,是数据格式。广泛用于数据交换。
2,不用这个也无妨,只要你的服务器,客户端可以互相收发消息即可。如果你愿意,甚至自己base64一遍直接互相传也行。
3,xml和json之所以流行的原因是各个语言基本内置了解析它们的函数,可以直接上手很方便。
4,聊天室对实时性和消息存储(离线消息)都有要求,至少你要熟练掌握数据库使用,以及完成数据实时交互要求的技术,可以是ajax poll,也可以是socket。

你问的问题可以看出,你粗懂技术,对语言了解些但是基础很差,像是半路出家,我给你一组关键词,你按顺序全部掌握后方可无障碍开发自己的产品。
a,http协议
b,dns和站点的原理
c,web服务器
d,php或其它任何一种web开发语言
e,php作为脚本语言的缺陷
f,restful api
g,javascript 和 ajax
h,websocket
i,web和移动app的区别和相同点
j,为什么我们把web也当作和app一样,都作为客户端的一种
k,mysql或其它数据库

JSON 和 XML的比较网上多的是吧。
以下是一比较的链接。
http://blog.sina.com.cn/s/blog_8a30865f0101amjh.html
我倾向于使用JSON。简单而且省流量啊。
聊天室就不得而知了。

个人感觉也是JSON比较好用.XML太过于复杂.

发表评论

电子邮件地址不会被公开。 必填项已用*标注