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


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

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

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

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

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

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

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

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

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

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

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

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

本人问题较多,请莫怪

再次感谢各位大神!

xml Android java json ios

喜多村香菜❤ 10 years, 5 months ago

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

后端

客户端向服务器请求数据采用的方式就是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

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

雪之下雷光 answered 10 years, 5 months ago

Your Answer