• 1
  • 2
  • 3
  • 4
  • 5
阿里云应用开发 首 页  »  帮助中心  »  云服务器  »  阿里云应用开发
Android平台云计算应用开发详解
发布日期:2016-7-27 16:7:16

  近几年,“云计算”概念非常的火爆,“云计算”核心是将大量的网络资源统一起来,为用户提供高效、便捷的软件服务。“云计算”倡导者希望的是:用户使用软件服务就像使用电与水一样,可便捷、随时随地、按需地使用服务。在“云计算”这个网络应用模式下,用户可通过各种“端”访问“云”,“端”可是任何能上网的电子设备,“云”就是提供的服务,“云”可能是连成一片的、巨大的、无边境的,也可能是渺小的、孤立的,总之它无处不在,能提供给用户所需要的各种服务。

  典型云端应用城市天气信息服务

  随着3G网络时代的到来,移动网络速度大大提升,从而使得云与端应用软件需求量越来越大。“云”不管如何飘必须要“落地”,即必须要有移动终端设备与相应的软件支持。

  在Android平台中“云端”应用的例子很多,如Android 系统预装的Gmail、日历与Google Map等等。在云计算公司如阿里云,阿里云应用开发也有很多。

  本章通过一个基于Android系统的天气信息查询案例,介绍云和端的应用技术。本章要实现的基本功能是软件启动后进入初始画面,初始画面显示中国主要城市名称列表。

  当用户触摸其中一个城市则弹出一个对话框,在对话框中列出了该城市当天及未来4天的天气信息。

  要实现这个Android天气信息查询案例,会涉及什么技术呢?

  首先是UI部分,这个系统中采用的UI控件主要是ListView控件,这个控件前面的章节已做过介绍了,不是本章关注的重点。除UI外,开发这个系统的核心问题还有3个:

  (1)从哪里可以获得这些数据;

  (2)采用什么技术获得;

  (3)获得数据后如何解析。

  从哪里可获得这些数据,也就是信息数据的来源,这里的信息可分为中国主要城市名称与某个城市当前的天气信息两部分。后者和其他的Android数据库应用系统略有不同,这里的某个城市当前天气信息是不可能从本地手机数据库中获得的。道理很简单,就是这些数据是实时动态变化的,是无法预知的,所以只能从“别人”那里获得,这里“别人”就是常说的“云计算”中的“云”。“云”能按需求提供给我们所需要的数据。在案例中使用Google公司提供的天气信息服务。对前者而言,因为这些数据是固定的,所以可把数据硬编码到程序中或者放到手机端的数据库中,但示本案例中数据的来源,是Google公司提供的世界城市信息服务。

  采用什么技术获得数据呢?解决这个问题的关键是使用什么样的“云”(服务器端),因为上述的两个Google服务都采用HTTP协议,所以可采用Java的一些支持HTTP协议的网络通信技术。除可使用HTTP协议外还有很多技术可使用,例如:Socket与Web Service等,但这些都要依赖于“云”开放什么形式的API。

  获得数据后怎样解析?这个问题也要依赖于使用的“云”,一般而言,“云”都会提供多种形式的数据以满足不同用户的需求。在本例中采用的两个Google服务,它们返回的数据格式有JSON与XML,可针对这些格式采用不同的技术进行解析。云与端的应用技术主要是网络通信。