-text-justify: inter-ideograph;'>【作者】李文进;
【作者单位】海景科技;
【刊名】《电脑知识与技术》 2011年27期
【关键词】android widget 股票 服务
【摘要】Android平台提供的widget小工具,不但丰富了手机桌面,而且增强了用户实时获取信息的能力。一个股票widget的实现,涉及到Android的Activity、Service、Broadcast Receiver、Content Provider这四大组件,包含了网络通信、事件的添加与处理、后台服务、页面布局、消息通知、数据存储等诸多技术。从一个小小的桌面工具,就可以领略google Android API的强大功能。
10. 移动应用市场发展状况分析
【篇名】移动应用市场发展状况分析
【作者】吴希选;张成军
【作者单位】中国移动通信集团终端有限公司河北分公司;
【刊名】《2012全国无线及移动通信学术大会论文集(下)》2012年
【关键词】移动应用;移动终端;移动应用商店
【摘要】首先介绍了移动应用及移动应用商店发展的现状,并指出移动应用市场存在的问题及解决办法,最后给出规范引导移动应用市场健康发展的建议。
11.一个移动应用综合发布平台的研究与设计
【篇名】一个移动应用综合发布平台的研究与设计
【作者】范春晓;邹俊伟;马飞飞;张晓莹
【作者单位】北京邮电大学电子工程学院 北京邮电大学电子工程学院
北京邮电大学电子工程学院 北京邮电大学电子工程学院
【刊名】《2004年全国通信软件学术会议论文集》2004年
【关键词】移动应用;移动互联网;网关;空中下载技术;
【摘要】针对当前移动互联网存在的诸多问题,综合考虑当前的相关技术,提出了一个移动应用和移动交易的综合解决方案——移动应用综合发布平台,在多种类型的移动终端和服务提供商之间构筑起了一座桥梁。
, 什么是Android?
Android是一个用于移动设备的软件,包括操作系统,中间件和关键应用程序栈。 Android SDK 提供必要的工具和API在Android平台上开始使用Java编程语言开发应用
应用框架
通过提供一个开放的开发平台,为Android的开发人员提供了极其丰富和创新应用能力扩展。开发商考虑到设备的硬件优势,访问位置信息,后台服务,集报警,运行状态栏添加通知等。开发者具有完全访问核心应用程序架构,旨在简化组件重写应用。同样的机制允许组件被用户替换。
所有应用程序的背后,是一套服务和系统,包括:
一组丰富的可扩展的系统,可以用来建立一个应用程序,包括列表,网格,文本框,按钮,甚至可嵌入网页浏览器,提供内容访问数据,从其他应用程序(如通讯录)共享自己的数据。一个资源管理器,提供非代码资源,如本地化字符串,图形,布局和文件的访问,一个通知管理,使所有应用的状态栏显示自定义的警报,活动管理器管理应用程序的生命周期,提供了一个共同导航和BackStack的库。
Android包含一套C / C ++库使用Android系统的各个组件下面列出了一些核心库通过Android应用程序框架,以开发这些功能都开放给开发者:
系统C库 :一个标准C系统库(libc)的BSD派生的库,调整为基于Linux的嵌入式设备。
媒体库 :基于PacketVideo的OpenCORE;许多流行的音频录制和播放支持视频格式库,以及静态图像文件,包括MPEG4,H.264标准,支持MP3,AAC,AMR,JPG格式,和PNG
LibWebCore :一个现代化的网页浏览器引擎的Android浏览器和一个可嵌入的Web视图
3D库 :基于OpenGL ES 1.0 API的执行库,可以使用硬件3D加速(如果可用),高度优化的3D软件光栅
FreeType :位图和矢量字体渲染
SQLite的 :为所有应用程序提供一个强大的和轻量级的关系数据库引擎
Android运行
Android包括一套核心库,提供大部分Java编程语言核心库。
每一个Android应用程序运行在它自己的进程中,与自己的Dalvik虚拟机对应。Dalvik被设计,使设备可以有效地运行多个虚拟机,虚拟机执行文件Dalvik可执行(.dex)的格式文件,进行优化,最小的内存占用。
Linux内核
Android依赖Linux 2.6版本为核心的系统服务,如安全,内存管理,进程管理,网络堆栈和驱动模型。内核层也作为硬件和软件堆栈的其余部分之间的抽象层。
应用基础
Android应用程序都用Java编程语言所编写。Android SDK工具编译的代码编译成Android包,生成apk。apk文件被认为是一个应用程序,是Android的安装应用程序的文件。一旦安装在设备上,每个Android应用住在自己的安全沙箱。
Android操作系统是一个多用户的Linux系统,系统中的每个应用程序是一个不同的软件。默认情况下,系统为每个应用分配一个唯一的Linux用户ID。该系统设置在应用程序中的所有文件的权限只分配给该应用程序的用户ID,以便可以访问它们。每个进程都有其自己的虚拟机(VM),以便从其他应用程序隔离运行的应用程序的代码。默认情况下,每一个应用程序运行在自己的Linux进程。Android的任何应用程序,需要执行启动过程,也需要执行关闭过程。也就是说,每个应用程序,默认情况下,只能访问到它需要做的工作,并没有更多的访问权限。这将创建一个非常安全的环境中,应用程序不能访问它不获准部分的系统。然而,有一个应用程序与其他应用程序共享数据和应用程序来访问系统服务的方式:安排为两个应用程序共享相同的Linux用户ID,在这种情况下,他们能够互相访问对方的文件。为了节省系统资源,具有相同的用户ID的应用程序也可以安排在相同的Linux进程运行,并共享相同的虚拟机(应用程序也必须使用同一证书签名)。应用程序可以请求访问用户的通讯录,短信,装入存储(SD卡),摄像头,蓝牙,以及更多的设备,如数据的权限。用户在安装时的所有应用程序必须被授予权限。涵盖了一个Android应用程序如何在系统中存在的基础。
应用程序组件
应用程序组件是一个Android应用程序的重要组件。每个组件是一个不同的角度,通过该系统可以进入您的应用程序。不是所有的组件是实际的用户和一些互相依赖切入点,但是每一个组件作为自己的实体存在,并发挥特定的角色,每个组件都是独特的建筑块,有助于确定您的应用程序的整体行为。有四种不同类型的应用程序组件。每个类型提供不同的目的,并有一个独特的生命周期定义如何创建和销毁组件。这里有四种类型的应用程序组件:
活动
一个活动代表一个单一的用户界面。例如,电子邮件应用程序可能有一个活动,显示了一个新的电子邮件列表,另一个活动,写电子邮件,并阅读邮件的另一个活动。虽然这些活动,在一起成为用户体验中的电子邮件应用程序,但是每个活动都是独立于其他。正因为如此,不同的应用程序可以启动任何一个这些活动(如电子邮件应用程序,允许它)。例如,一个摄像头应用程序可以为用户在启动的电子邮件应用程序中的活动,写新邮件,分享图片。
服务
一个服务是一个组件,在后台运行,执行长时间运行的操作或远程进程执行工作。一个服务不提供用户界面。例如,服务可能会在后台播放音乐的同时,用户在不同的应用程序,或者它可能获取网络上的数据,而不阻塞用户交互的活动。如活动的另一个组成部分,可以启动该服务,并允许它运行或绑定到它与它交互。
内容提供
一个内容提供是应用程序数据的共享。你可以将存储在文件系统中的数据,一个SQLite数据库中的数据,在网络上,或任何其他持久性存储位置,您的应用程序都可以访问。通过内容提,其他应用程序可以查询甚至修改内容提供商的数据(如果允许)。例如,Android系统提供了一个内容供应用户的联系人信息。因此,任何具有适当权限的应用程序可以查询的内容提供商(如部分ContactsContract.Data)读取和写入一个特定的人的信息。
广播接收机
一个广播接收器是一个全系统广播通知的组件。例如宣布该屏幕已关闭,电池低,或图片被抓获。应用程序也可以启动广播,例如,让我们知道,一些数据已被下载到设备,可供他们使用其他应用程序。虽然广播接收机不显示用户界面,他们可能会创建一个状态栏通知 广播事件发生时提醒用户。不过,更普遍,广播接收器是一个“网关”其他组件和打算做的工作非常少量。例如,它可能会启动服务来执行基于事件的一些工作。
广播接收机实现BroadcastReceiver作为一个子类 ,每个广播作为交付的意向对象。
独特的Android系统设计的一个方面,使任何应用程序可以启动另一个应用程序的组件。例如,如果你希望用户与设备上的照相机捕捉的照片,还有可能和您的应用程序可以使用它的另一个应用程序,而不是发展自己拍摄照片的活动。
在系统启动时一个组件,它启动该应用程序的进程(如果它尚未运行)和实例化组件所需的类。例如,如果您的应用程序开始在捕捉照片的摄像头应用程序的活动,该活动的摄像头应用程序,在您的应用程序的过程中不属于在这个过程中运行。因此,不同于其他大多数系统上的应用程序,Android应用程序不具有一个单一的入口点(例如,有没有 main ()函数)。
manifest文件
Android系统可以启动一个应用程序组件,系统必须知道,通过阅读应用程序的AndroidManifest.xml文件可以知道的组件存在。您的应用程序必须使用在这个文件中声明的组件,它必须是在应用项目目录的根。清单做了的事情,除了宣布应用程序的组件,如:确定任何用户的权限,如因特网接入或只读访问用户的联系人应用程序需要。申报的基于API的应用程序使用的应用程序所需的最低空气污染水平。声明由一个摄像头,蓝牙服务,或者是多点触摸屏的应用,如使用或要求的硬件和软件功能。API库链接(Android框架API的除外),如谷歌地图图书馆,应用程序需要。和声明组件活动,服务和内容提供商,包括源,但不申报清单是不可见的系统,因此,不能运行。然而,广播接收机可以宣布在清单或在代码中动态创建(为BroadcastReceiver对象)和注册系统由调用registerReceiver()。
附录B 主要参考文献的题录及摘要
1. 疯狂Android讲义
【名称】疯狂Android讲义
【作者】李刚
【单位】电子工业出版社
【摘要】全面地介绍了Android应用开发的相关知识,全书内容覆盖了Android用户界面编程、Android四大组件、Android资源访问、图形/图像处理、事件处理机制、Android输入/输出处理、音频/视频多媒体应用开发、opengl与3d应用开发、网络通信编程、Android平台的web service、传感器应用开发、gps应用开发、google map服务等。
2. Android应用开发揭秘
【名称】Android应用开发揭秘
【作者】杨丰盛
【单位】机械工业出版社
【摘要】《Android应用开发揭秘》国内第一本基于Android 2.0的经典著作,5大专业社区联袂推荐,权威性毋庸置疑!《Android应用开发揭秘》内容全面,不仅详细讲解了Android框架、Android组件、用户界面开发、游戏开发、数据存储、多媒体开发和网络开发等基础知识,而且还深入阐述了传感器、语音识别、桌面组件开发、Android游戏引擎设计、Android应用优化、OpcnGL等高级知识,最重要的是还全面介绍了如何利用原生的C,C++(NDK)和Python、Lua等脚本语言(AndroidScriptingEnvironment)来开发Android应用,《Android应用开发揭秘》实战性强,书中的每个知识点都有配精心设计的示例,尤为值得一提的是,它还以迭代的方式重现了各种常用的Android应用和经典Android游戏的开发全过程,既可以以它们为范例进行实战演练,又可以将它们直接应用到实际开发中去。
3. Android编程权威指南
【名称】Android编程权威指南
【单位】人民邮电出版社
【摘要】Big Nerd Ranch是美国一家专业的移动开发技术培训机构,《Android编程权威指南》主要以训练营的5天教学课程为基础,融合了两位作者多年的心得体会,是一本完全面向实战的Android 编程权威指南。《Android编程权威指南》共37章,详细介绍了GeoQuiz、HelloMoon、DragAndDraw等8个Android应用。这些应用的难易程度不一,最复杂的CriminalIntent应用占用了13章的篇幅。通过这些精心设计的应用,读者可掌握很多重要的理论知识和开发技巧,获得最前沿的开发经验。
如果你熟悉Java语言,或者了解对面向对象编程,那就立刻开始Android编程之旅吧!
4. Professional Android 2 Application Development
【名称】Professional Android 2 Application Development
【单位】Wiley
【摘要】Professional Android Application Development" is a professionaldeveloper's guide to building mobile applications using the nextmajor release of the Android SDK. This hands-on approach providesin-depth coverage of the Android SDK through a series of projects, each introducing a new Android platform feature and highlightingthe techniques and best practices to get the most out of Android. Providing concise and compelling examples, "Professional AndroidApplication Development" is an updated guide that let's developersquickly construct real-world mobile applications for Android phonesrunning the latest version of Android.
5. Java从入门到精通
【名称】Java从入门到精通
【作者】李钟尉
【单位】清华大学出版社
【摘要】从初学者角度出发,通过通俗易懂的语言、丰富多彩的实例,详细介绍了使用Java语言进行程序开发需要掌握的知识。全书共分28章,包括初识Java,熟悉Eclipse开发工具,Java语言基础,流程控制,字符串,数组,类和对象,包装类,数字处理类,接口、继承与多态,类的高级特性,异常处理,Swing程序设计,集合类,I/O输入输出,反射,枚举类型与泛型,多线程,网络通信,数据库操作,Swing表格组件,swing树组件,Swing其他高级组件,高级布局管理器,高级事件处理,AWT绘图与音频播放,打印技术和企业进销存管理系统等。
6. Java编程入门经典
【名称】Java编程入门经典
【作者】卡登赫斯第
【单位】人民邮电出版社
【摘要】通过大量示例程序循序渐进地引导读者快速掌握使用Java开发程序的基本技能。全书分8个部分,包含25章和5个附录。第一部分通过一个简单的Java程序和各种动态网页,让读者对Java程序的编写流程和工作原理以及Java的广泛用途有感性的认识;第二部分分绍有关编程的基本知识,包括变量、条件语句和循环语句;第三部分探讨数组和对象;第四部分介绍如何创建图形用户界面,包括如何使用各种图形界面组件、如何使用布局管理器来排列组件以及如何响应用户输入;第五部分阐述如何创建交互式Web程序、处理错误、使用线程及读写文件;第六部分探讨如何读写XML数据、如何使用字体、颜色和图形,以及如何创建动画;第七部分介绍如何使用XML-RPC创建Web服务;第八部分为附录,阐述了如何安装与使用JDK和NetBeans集成开发环境,并介绍了网上的各种Java资源。
7. 基于Android技术的界面设计与研究
【篇名】基于Android技术的界面设计与研究
【作者】赵亮;张维
【作者单位】徐州建筑职业技术学院;
【刊名】《电脑知识与技术》 2009年29期
【关键词】Android view viewgroup 数据绑定 布局
【摘要】详细介绍了google发布的新一代智能手机平台Android的基本架构,通过对其应用程序构成框架的分析,分析了构成Android应用程序的四种架构块的功能。最后通过对视图和布局的介绍,给出一种使用Android技术的界面设计实现方案,并通过数据绑定实现了用户事件映射。
【DOI】TP311.52
8.基于Java的移动终端中间件的研究与设计
【篇名】基于Java的移动终端中间件的研究与设计
【作者】刘向辉;
【作者单位】华东师范大学;
【刊名】《华东师范大学》 2005年
【关键词】中间件 终端 Java;
【摘要】随着移动通信技术的飞速发展,移动业务也从最初的通话、短消息等基本服务向更加丰富和复杂的功能演进,如:移动浏览、游戏娱乐、移动商务、视频服务、位置服务等。移动通信运营商需要有一个移动终端运行和开发的统一平台来提供对越来越多的移动应用的支持,即移动终端中间件。 本课题是中国电信3G终端研究项目之一,由中国电信上海研发中心承担,作者参与了其中的研发工作。所谓移动终端中间件,不同于传统的中间件技术,它是位于移动终端底层硬件或操作系统平台之上,应用层之下的中间适配层。该层向下屏蔽掉硬件平台或操作系统平台的差异,向上为应用层提供一套统一的标准接口,应用层的开发基于该接口进行。 本文分析了3GPP移动终端的体系结构及其软硬件技术,总结了移动业务的开发现状以及移动业务开发中遇到的问题,提出了移动终端中间件的设计目标,总体架构和技术方案等。本文的重点是根据移动业务将移动终端中间件定义成较为完整的功能集组合,其中平台层定义了较为底层的系统级API集,为模块层提供支撑;模块层则定义了较为上层的基本功能集(SMS、MMS、WAP、多媒体等)和扩展功能集(蓝牙、SIP、位置服务、Web Services、加密和信任服务等),用户可以直接使用某些功能模块完成移动应用的客户端软件开发。另外,本文以SMS、MMS等为例给出了部分功能集的应用层实现方法,同时,就中间件的版本演进、平台无关性、安全策略和数字签名、应用管理软件、应用开发以及测试提出了建议的方案。最后,设计了基于Java的移动终端中间件的实现,为运营商提供了根据JTWI扩展的功能集,并通过一个实例介绍了基于移动终端中间件的业务开发方法。 移动终端中间件为无线应用开发提供了一个统一的软件平台,缩短了业务的客户端软件的开发周期,并增强可扩展性。移动终端中间件为实现无线数据应用的可移植性、可重用性和模块化提供了坚实的基础。
9. 如何做一个android的股票widget
【篇名】如何做一个android的股票widget