Android 手机操作系统已经推出就受到了广大用户的好评。尤其是它开源的特点大大吸引了开发爱好者的青睐。Android适用于各种各样的手机,从最低端直到最高端的智能手机。核心的Android API在每部手机上都可使用,但任然有一些API接口有一些特别的适用范围:这就是所谓的Android可选API。#t#
Android可选API主要是因为一个手持设备并不一定要完全支持这类API,甚至于完全不支持。例如,一个手持设备可能没有GPS或Wi-FI的硬件。在这个条件下,这类功能的API任然存在,但不会以相同的方式来工作。例如Location API任然在没有GPS的设备上存在,但极有可能完全没有安装功能提供者,意味着这类API就不能有效地使用。
你的应用应该无障碍地运行或连接在一个可能不支持你API的设备,因为你的设备上有这些上层接口(the classes)。当然执行起来可能什么也不会做,或者抛出一个异常。每个API会做些什么我们可以参考这些API的说明文档,你应该编写你的程序来适当的处理这类问题。
Wi-Fi API
Wi-Fi API为应用程序提供了一种与那些带有Wi-FI网络接口的底层无线堆栈相互交流的手段。几乎所有的请求设备信息都是可利用的,包括网络的连接速度、IP地址、当前状态等等,还有一些其他可用网络的信息。一些可用的交互操作包括扫描、添加、保存、结束和发起连接。
Wi-Fi API在 android.net.wifi包中。
定位服务(Location-Based Services)
定位服务允许软件获取手机当前的位置信息。这包括从全球定位系统卫星上获取地理位置,但相关信息不限于此。例如,未来其他定位系统可能会运营,届时,对其相应的API接口也会加入到系统中。
定位服务的API在android.location 包中。
多媒体API(Media APIs)
多媒体API主要用于播放媒体文件。这同时包括对音频(如播放MP3或其他音乐文件以及游戏声音效果等)和视频(如播放从网上下载的视频)的支持,并支持"播放URI地址"(Note:URI即是统一资源识别地址)模式-在网络上直接播放的流媒体。技术上来说,多媒体API并不是Android可选API,因为它总是要用到。但是不同的硬件环境上面可能有不同的编解码的硬件机制,因而它又是“可选的”。
多媒体API在 android.media包中。
基于OpenGL的3D图形(3D Graphics with OpenGL)
Android的主要用户接口框架是一个典型的面向控件的类继承系统。但不要让表面的情况迷惑了你,因为在它下面是一种非常快的2D和3D组合的图形引擎,并且支持硬件加速。用来访问平台3D功能的API接口是OpenGL ES API。和多媒体API一样,OpenGL也不是严格意义上的“可选”,因为这些API会总是存在并且实现那些固定的功能。但是,一些设备可能有硬件加速环节,使用它的时候就会影响你的应用程序的表现。
OpenGL的API在 android.opengl 中可以看到。
Google和Sun相同,把部分高端应用作为可选API供手机生产商定制不同的硬件支持模块。在JME中Sun是以JSR方式公布而谷歌采用了optional API
一、Location-Based Services 定位服务
Android操作系统支持GPS API-LBS,可以通过集成GPS芯片来接收卫星信号通过GPS全球定位系统中至少3颗卫星和原子钟来获取当前手机的坐标数据,通过转换就可以成为地图上的具体位置了,这一误差在手机上可以缩小到10米。在谷歌开发手机联盟中可以看到著名的SiRF star。所以未来gPhone手机上市时集成GPS后的价格不会很贵。同时谷歌正在研制基于基站式的定位技术-MyLocation可以更快速的定位与前者GPS定位需要花费大约1分钟相比基站定位更快。
二、Media APIs 多媒体接口
Android平台上集成了很多影音解码器以及相关的多媒体API, 通过这些可选API,厂商可以让手机支持MP3、MP4、高清晰视频播放处理等支持。
三、3D Graphics with OpenGL 3D图形处理OpenGL可选API
Android平台上的游戏娱乐功能如支持3D游戏、或应用场景就需要用到3D技术,手机生产厂商根据手机的屏幕以及定位集成不同等级的3D加速图形芯片来加强gPhone手机的娱乐性,有来自高通的消息称最新的显示芯片在gPhone上将会轻松超过索尼PS3。
四、Low-Level Hardware Access 低级硬件访问
这个功能主要用于控制手机的底层方面操作,由于设计底层硬件操作,将主要由各个手机硬件生产厂商来定制,支持不同设备的操作管理等支持,如蓝牙BlueTooth以及Wifi无线网络支持等。
通过本文的介绍相信大家都了解了gPhone手机中的技术功能,开发软件或游戏的同时可以了解到Android平台的高度可伸缩性,帮助手机硬件厂商控制成本。
以上就是对Android可选API的相关介绍。