求java c s架构基于c/s的销售管理系统源码

Delphi语言_百度百科
清除历史记录关闭
声明:百科词条人人可编辑,词条创建和修改均免费,绝不存在官方及代理商付费代编,请勿上当受骗。
Delphi语言
Delphi是著名的(现在已和Inprise合并)公司开发的可视化软件开发工具。“真正的程序员用c,聪明的程序员用Delphi”,这句话是对Delphi最经典、最实在的描述。Delphi被称为第四代编程语言,它具有简单、高效、功能强大的特点。和相比,Delphi更简单、更易于掌握,而在功能上却丝毫不逊色;和相比,Delphi则功能更强大、更实用。可以说Delphi同时兼备了VC功能强大和VB简单易学的特点。它一直是程序员至爱的编程工具。
Delphi语言基本信息
Delphi,是平台下著名的快速应用程序开发工具(Rapid Application Development,简称RAD)。它的前身,即是时代盛行一时的“BorlandTurbo Pascal”,最早的版本由美国Borland(宝兰)公司于1995年开发。
Delphi由Borland公司推出的Delphi是全新的可视化编程环境,为我们提供了一种方便、快捷的Windows应用程序开发工具。它使用了MicrosoftWindows图形用户界面的许多先进特性和设计思想,采用了弹性可重复利用的完整的面向对象程序语言(Object-Oriented Language)、当今世界上最快的、最为领先的数据库技术。
对于广大的程序开发人员来讲,使用Delphi开发应用软件,无疑会大大地提高编程效率,而且随着应用的深入,您将会发现编程不再是枯燥无味的工作——Delphi的每一个设计细节,都将带给您一份欣喜。
Delphi是Borland公司研制的新一代可视化开发工具,可在Windows3.x、、WindowsNT、、、等环境下使用。当前,Delphi 也可以在平台上开发应用,其在LINUX上的对应产品。
Delphi 拥有一个可视化的集成开发环境(),采用面向对象的编程语言ObjectPascal和基于部件的开发结构框架。Delphi它提供了500多个可供使用的构件,利用这些部件,开发人员可以快速地构造出应用系统。开发人员也可以根据自己的需要修改部件或用Delphi本身编写自己的部件。
“真正的程序员用c,聪明的程序员用Delphi”,这句话是对Delphi最经典、最实在的描述。Delphi被称为第四代编程语言,它具有简单、高效、功能强大的特点。和VC相比,Delphi更简单、更易于掌握,而在功能上却丝毫不逊色;和VB相比,Delphi则功能更强大、更实用。可以说Delphi同时兼备了VC功能强大和VB简单易学的特点。它一直是程序员至爱的编程工具。Delphi具有以下的特性:基于窗体和面向对象的方法,高速的编译器,强大的数据库支持,与Windows编程紧密结合,强大而成熟的组件技术。但最重要的还是Object Pascal语言,它才是一切的根本。Object Pascal语言是在Pascal语言的基础上发展起来的,简单易学。
Delphi提供了各种开发工具,包括集成环境、图像编辑(Image Editor),以及各种开发数据库的应用程序,如DesktopDataBase Expert等。除此之外,还允许用户挂接其它的应用程序开发工具,如Borland公司的资源编辑器(Resourse Workshop)。
在Delphi众多的优势当中,它在数据库方面的特长显得尤为突出:适应于多种数据库结构,从客户机/服务机模式到多层数据结构模式;高效率的数据库管理系统和新一代更先进的数据库引擎;最新的数据分析手段和提供大量的企业组件
Delphi语言发展历程
支持16位Windows开发。基于框架(VCL)的,可拖曳、可视化的开发环境。
以32位编译器为核心,支持C/S数据库开发。
语法:加入(Interface)的机制。IDE:首次提供了(Code Insight)。
语法:加入和方法覆盖等支持。IDE:增强调试能力,提供代码模板。
增强了IDE和,提供了TeamSource。简化的开发,增强数据库支持。
提供了Web Service。跨平台的Kylix 1.0和CLX。
提供了.NET的过渡,增强的Internet开发(IntraWeb),完善数据库支持,增加了Indy网路元件和Rave Report资料库报表,并且支援UML及XP的程式制作。
单纯的for .NET版本,拥有C#的能力,保留了Delphi的易用性(业内视为一个过渡版本)。
正式名称:Delphi 2005。语法:加入了inline及for in loop等功能。IDE:把Borland Delphi. Net、Borland Delphi Win32、Borland C#、Enterprise Core Objects等环境和功能集成成一个开发工具,因此可以在Win32和.NET开发环境中切换或同时进行。
发布名称:Borland Developer Studio(BDS) 2006。集成C++ B ECO(Enterprise Core Objects)升级到ECO III; 集成Together for Delphi,可以在同一个IDE中进行UML开发;QA Audits和QA Metrics可以快速的把握专案的设计和代码的质量。
2006 Turbo Borland将BDS 2006拆分成几个独立的版本(Delphi for win32、Delphi for、C#、C++ Builder),而且不能同时安装两个不同的版本。由于Borland的IDE生产部份独立成为一家名为codegear的公司,所以这个版本是以Borland名义推出的最后一个版本。
正式名称: RAD Studio - Delphi 2007。
Borland正式宣布将CodeGear子公司出售给(易博龙)技术公司。
Embarcadero发布CodeGear Delphi 2009 Pre-release版。
Embarcadero发布CodeGear.RAD.Studio.2010版。
Embarcadero 发布 Delphi XE(又名Delphi 2011,代号为Fulcrum)。
Embarcadero公司宣布成立一个新的精简版Delphi Starter Edition,是在爱好者和谁得到一个稍微简化的功能集为一个小的创业公司的价格,旨在可用性
Delphi语言技术特点
每一种开发工具,仅有程序语言是不够的,还需要一个完备的库/类库。Delphi使用的类库是可视组件类库(Visual Component Library)。同MFC、OWL一样,VCL也是一种开发架构(Framework),采用了面向对象技术对Windows应用程序的开发进行了封装,使用PME(Property/Method/Event)的开发模式,极大的提高了开发效率。
跨平台开发
在Delphi 7之后,开始支持下的Kylix,目前Kylix的最新版本为3。Borland公司为了支持Delphi的跨平台开发,从Delphi 6.0开始加入了另外一个开发架构CLX。开发人员可以使用CLX架构开发出可以在Kylix中编译的程序。但是从Delphi 8开始,其后续版本并不再对CLX提供支持。
2003年推出的Delphi从8.0,开始正式支持微软公司的.NET平台。Delphi9 via Delphi 2005,亦将Delphi集成在一个IDE环境中(同时也支持C#)。由于提供了.Net Framework的CLR,因此可用Delphi的代码,编译成和.NET相同的运行码,也可使用.NET的各项类库,使得程序设计上更富有弹性。
跨平台开发(Delphi XE2)
通过Delphi XE2所带的FireMonkey平台,Delphi可以开发跨平台应用程序,并原生编译到Windows和Mac OS X平台。FireMonkey还可以为iPhone、iPod Touch和iPad创建iOS应用,并分发到苹果公司的应用商店。Delphi的FireMonkey应用程序拥有完全的硬件加速。
分布式应用系统
应用程序开发团队的每位成员,不见得会使用同一套开发工具,因此Delphi支持COM/DCOM与CORBA,可供Delphi设计人员使用Visual C++、Visual BASIC的ActiveX组件,或使用DCOM、CORBA的功能让JAVA应用程序取用其共享功能。
Delphi语言主要功能
Delphi发展至今,从Delphi1、Delphi2到Delphi2011,不断添加和改进各种特性,功能越来越强大。Delphi5开始添加了对IDE(集成开发环境)的很多改进新特性,扩展了数据库支持(ADO和InterBase数据库),带有Internet支持的MIDAS改进版,TeamSouse版本控制工具,转换功能,框架概念以及很多的新组件与新特性。
Delphi 6.0是Borland公司推出的一套无论是界面还是功能都近乎完美的应用程序开发工具。与以前的Delphi版本相比,Delphi 6.0使用更简便,效率也更高。
Delphi 7.0Delphi 7.0使用更简便,效率更高,最稳定的一个版本,被称为开发人员的工具之最,也是Borland产品最顶峰时期,更是风靡全球。
Delphi2010内置的Direct 2D模块及开发库,其新加的功能:拥有一个能同时运作于x86和x64的IDE,在此IDE下将会有跨平台编译器,能够编译用于linux和MAC的应用程序;将会支持windows7下的触摸式编程;强化的DataSnap;将支持;将支持函数式编程,这需要很多时间,据David估计是2011会实现。
Delphi XE2实现了跨平台通用开发,通过Delphi XE2所带的FireMonkey平台,Delphi可以开发跨平台应用程序,并原生编译到Windows和Mac OS X平台。FireMonkey还可以为iPhone、iPod Touch和iPad创建iOS应用,并分发到苹果公司的应用商店。Delphi的FireMonkey应用程序拥有完全的硬件加速
Delphi语言版本更新
注 FM = 可用于 FM 应用平台 VCL = 可用于VCL
Delphi 2009中新增内容
Unicode FM VCL
功能区控件VCL
Robust项目管理FM VCL
重要的DataSnap 升级FM VCL
泛型和匿名方法FM VCL
Delphi 2010中新增内容
构建已启用触碰和手势支持的应用FM VCL
Windows 7支持FM VCL
IDE内视FM VCL
dbExpress可连接到Firebird 数据库FM VCL
已添加到Delphi语言的扩展 RTTI(反射)FM VCL
Delphi XE中新增内容
用DataSnap进行扩展的多层开发FM VCL
额外的附带工具(CodeSite Express、IP*Works、Beyond Compare Differ)VCL
针对Azure和Amazon的云计算支持FM VCL
IDE中的Subversion 集成FM VCL
正则表达式FM VCL
Delphi XE2中新增内容
针对Windows的64位 Delphi编译器FM VCL
FireMonkey应用平台 - 利用一个代码库创建多平台、多设备应用FM
用FireMonkey 创建Windows 和Mac OS X桌面应用FM
DataSnap移动连接器FM VCL
LiveBindings引擎FM VCL
FastReport报表工具FM VCL
Delphi XE3中新增内容
Windows 8支持FM VCL
通过Metropolis UI,将Windows 现代化的外观融入到您的应用中FM VCL
OS X Mountain Lion和Retina 显示支持FM
可视化的LiveBindings FM VCL
增强的FireMonkey样式、音频/视频和3D FM
修复和功能增强FM VCL
Delphi XE4中新增内容
通过Delphi iOS ARM编译器、工具链、全新可视化开发环境和针对iOS的控件,开发iOS 应用FM
IBLite数据库可用于iOS,带有不受限的部署许可证FM
FireDAC – 功能强大、快速且简单的数据访问FM VCL
FireMonkey传感器对位置、方向和运动的支持FM
FireMonkey框架和全新的 TListView组件 FM
OS X全屏模式FM修复和功能增强FM VCL
Delphi XE5中新增内容
开发Android应用FM
针对Android 和iOS的全新移动组件FM
REST客户端支持,以访问基于云端的 RESTful web服务(在专业版和更高级版本中)FM VCL
FireDAC已集成到Delphi安装,并且核心组件已包括在专业版中FM VCL
针对Android的IBLite数据库,并带有不受限的部署许可证FM
开发iOS 7 应用FM ,修复和功能增强FM VCL
Delphi XE6中的新增内容
应用Tethering组件扩展您的现有Windows应用到移动,无需一定要移植您的整个Windows应用。选择对移动有意义的特性,并轻松地与您的现有 Windows应用进行交互。连接您的桌面(VCL 和FMX)应用和移动应用。为您的VCL应用创建移动伙伴应用。通过Wi-Fi 和在您的本地网络上工作。 将来的版本会支持蓝牙。
任务栏组件通过预览内的按钮控件,组件可用于显示您的应用中可选择的多个窗口预览。自动或自定义预览。在任务栏按钮中显示您的应用的进度。在任务栏按钮上叠加图标。
云端服务(BaaS)与用于Kinvey和Parse的组件进行集成与领先的后端即服务(BaaS)提供者集成,以添加功能特性和平台服务到您的移动应用。您可以轻松地访问云端中的公共服务,无需一定要您自己构建或维护后端服务。在任意设备和平台上使用推送通知来吸引您的用户。访问云端中的数据和对象存储。用户身份认证。在XE5中已引入的 REST客户端支持上构建。通过公共的API组件集,支持流行的BaaS 提供者、Kinvey和Parse。
全新的VCL 样式赋予您的应用一个现代化的Windows或自定义外观。包括Windows 手写板样式。支持Windows 7 和Windows 8。完全样式化您的应用,包括菜单和边框。
VCL传感器组件即使对于使用全新 Windows平板电脑像Surface Pro的Windows用户来说,传感器也无处不在。Delphi应用可以添加位置、运动和其他特性。从运行在Windows平板电脑上的应用访问设备传感器。加速计、GPS和回转仪功能。
内置购买和内置广告功能移动应用是应用开发人员的收入产生良机。通过集成内置购买功能和广告,您可以将您的移动应用兑换成现金。 和Android上的销售内容、功能、服务和订阅。支持顶部广告网络(Google AdMob和Apple iAd)。
创建用于眼镜的应用用delphi进行的多设备应用开发已延伸到PC、平板电脑、和智能手机外,到可穿戴设备。 创建可运行在Google 眼镜上的Android应用。带有已优化Google眼镜的外观和分辨率的全新自定义样式。Google眼镜设备设计器模板。
可访问性使您的应用对大多数用户来说更易于使用,包括使用屏幕阅读器软件的那些用户。针对FM 桌面应用的全新可访问性特性。支持 Windows上的JAWS 和Mac OS X上的VoiceOver。
质量、性能和稳定性获取最好的开发经验,并为您的用户交付最佳的用户体验。解决了超过 2,000个已报告的问题。增强了所有平台上的总体应用运行时性能。
核心和数据库特性贯穿于产品的核心增强。数据库和FireDAC 增强、FDMemTable。用于FireDAC 的数据库浏览器。Apache支持(WebBroker)。DirectX 11标题。DataSnap性能和更新向导。RTL重构和功能增强。FireDAC Informix驱动程序更新。Apache C++支持。
Delphi语言市场状况
Delphi本身是极其优秀的编译器,比易学,比强大,曾经在国际市场上风靡一时。“真正的程序员用C,聪明的程序员用Delphi”,这句话是对其最经典、最实在的描述。由于Borland公司连续决策失误,以及Microsoft与Java的冲击,使得delphi衰落。在中国大陆,又由于公司商业策略的考量,Delphi的市占率越来越少。现在大部分的Delphi用户,多为旧版本培养出来的老客户,而后来的Delphi用户则是逐渐减少。之所以会有这种现象,除了微软与Java两大阵营的竞争效应,以及Delphi本身就缺乏中文教材的因素之外,在程序设计的正规教育体系中,此开发工具亦非主流学科。在这样的环境下,如果Delphi得不到强大的软件公司作为后台来重点开发它,就很难再次崛起。免费软件Lazarus在一定程度上也可作为delphi的互补品。
.中国知网[引用日期]
.中国知网[引用日期]
.中国知网[引用日期]
.360百科[引用日期]
本词条认证专家为
副教授审核
大连理工大学软件学院
清除历史记录关闭Android(Google公司开发的操作系统)_百度百科
清除历史记录关闭
声明:百科词条人人可编辑,词条创建和修改均免费,绝不存在官方及代理商付费代编,请勿上当受骗。
?Google公司开发的操作系统
(Google公司开发的操作系统)
Android是一种基于的自由及开放源代码的,主要使用于,如和,由公司和领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“”或“”。Android操作系统最初由开发,主要支持。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于2008年10月。Android逐渐扩展到及其他领域上,如、、等。2011年第一季度,Android在全球的市场份额首次超过,跃居全球第一。 2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。
日谷歌开发的操作系统Android在迎来了5岁生日,全世界采用这款系统的设备数量已经达到10亿台。2014第一季度Android平台已占所有移动广告流量来源的42.8%,首度iOS。但运营收入不及iOS。
Android系统简介
Android一词的本义指“”,同时也是于日
宣布的基于平台的手机操作系统的名称,该平台由、中间件、和组成。
Android一词最早出现于法国作家利尔亚当(Auguste Villiers de l'Isle-Adam)在1886年发表的《》(L'ève future)中。他将外表像人的机器起名为Android。
Android的是由Ascender公司设计的,诞生于2010年,其设计灵感源于男女厕所门上的图形符号,
于是布洛克绘制了一个简单的机器人,它的躯干就像锡罐的形状,头上还有两根天线,Android小机器人便诞生了。其中的文字使用了Ascender公司专门制作的称之为“Droid ” 的字体。Android是一个全身绿色的机器人,也是Android的标志。采用了PMS 376C和RGB中的#A4C639来绘制,这是Android操作的象徵。有时候,它们还会使用纯文字的。
2012年7月美国科技博客网站BusinessInsider评选出二十一世纪十款最重要电子产品,Android和等榜上有名。
(Android logo 相关图片相册图片:
Android发展历程
2003年10月,等人创建Android公司,并组建Android团队。
日,低调收购了仅22个月的高科技企业Android及其团队。安迪鲁宾成为Google公司工程部副总裁,继续负责Android项目。
日,谷歌公司正式向外界展示了这款名为Android的操作系统,并且在这天谷歌宣布建立一个全球性的联盟组织,该组织由34家手机制造商、软件开发商、以及芯片制造商共同组成,并与84家硬件制造商、软件开发商及电信营运商组成(Open Handset Alliance)来共同研发改良Android系统,这一联盟将支持谷歌发布的手机操作系统以及应用软件,Google以Apache免费开源许可证的授权方式,发布了Android的源代码。
2008年,在GoogleI/O大会上,提出了AndroidHAL架构图,在同年8月18号,Android获得了()的批准,在2008年9月,谷歌正式发布了Android 1.0系统,这也是Android系统最早的版本。
2009年4月,谷歌正式推出了这款手机,从Android 1.5版本开始,谷歌开始将Android的版本以甜品的名字命名,Android 1.5命名为Cupcake(纸杯蛋糕)。该系统与Android 1.0相比有了很大的改进。
2009年9月份,谷歌发布了的正式版,并且推出了搭载Android 1.6正式版的手机HTC Hero(G3),凭借着出色的外观设计以及全新的Android 1.6操作系统,HTC Hero(G3)成为当时全球最受欢迎的手机。Android 1.6也有一个有趣的甜品名称,它被称为Donut(甜甜圈)。
2010年2月份,Linux内核开发者Greg Kroah-Hartman将Android的驱
安卓各个版本在市场受欢迎度
动程序从Linux内核“状态树”(“staging tree”)上除去,从此,Android与Linux开发主流将分道扬镳。在同年5月份,谷歌正式发布了操作系统。谷歌将Android 2.2操作系统命名为Froyo,翻译完名为冻酸奶。
2010年10月份,谷歌宣布Android系统达到了第一个里程碑,即电子市场上获得官方数字认证的Android应用数量已经达到了10万个,Android系统的应用增长非常迅速。在2010年12月,谷歌正式发布了操作系统Gingerbread (姜饼)。
2011年1月,谷歌称每日的Android设备新用户数量达到了30万部,到2011年7月,这个数字增长到55万部,而Android系统设备的用户总数达到了1.35亿,Android系统已经成为智能手机领域占有量最高的系统。
日,Android手机已占据全球智能机市场48%的份额,并在亚太地区市场占据统治地位,终结了Symbian()的霸主地位,跃居全球第一。
2011年9月份,Android系统的应用数目已经达到了48万,而在智能手机市场,Android系统的占有率已经达到了43%。继续在排在移动操作系统首位。谷歌将会发布全新的操作系统,这款系统被谷歌命名为Ice Cream Sandwich(冰激凌三明治)。
日,谷歌Android Market已有10万开发者推出超过40万活跃的应用,大多数的应用程序为免费。Android Market应用程序商店目录在新年首周周末突破40万基准,距离突破30万应用仅4个月。在2011年早些时候,Android Market从20万增加到30万应用也花了四个月。
日,Android4.4正式发布,从具体功能上讲,Android4.4提供了各种实用小功能,新的Android系统更智能,添加更多的Emoji表情图案,UI的改进也更现代,如全新的HelloiOS7半透明效果。
2015年27日,网络安全公司Zimperium研究人员警告,安卓(Android)存在“致命”安全漏洞,黑客发送一封彩信便能在用户毫不知情的情况下完全控制手机。
Android发行版本
Android测试版本
Android 各代版本 Logo
Android在正式发行之前,最开始拥有两个内部测试版本,并且以著名的机器人名称来对其进行命名,它们分别是:(Android),(Android 1.0)。后来由于涉及到版权问题,将其命名规则变更为用甜点作为它们系统版本的代号的命名方法。甜点命名法开始于发布的时候。作为每个版本代表的甜点的尺寸越变越大,然后按照26个字母数序:(Android 1.5),(Android 1.6),(Android 2.0/2.1),(Android 2.2),(Android 2.3),(Android 3.0),(Android 4.0),(Jelly Bean,Android4.1和Android 4.2),(KitKat,Android 4.4),(Lollipop,Android 5.0),棉花糖(Marshmallow,Android 6.0),(Nougat,Android 7.0)。
Android1.1
2008年9月发布的Android第一版。
Android1.5
Cupcake(纸杯蛋糕):日发布。
主要的更新如下:
拍摄/播放影片,并支持上传到;支持立体声,同时改善自动配对性能;最新的采用技术的,支持复制/贴上和页面中搜索;性能大大提高;提供屏幕虚拟;主屏幕增加音乐播放器和相框;应用程序自动随着手机旋转;、Gmail、,浏览器的用户接口大幅改进,如Gmail可以批量删除;相机启动速度加快,拍摄图片可以直接上传到Picasa;来电照片显示。
Android1.6
Donut(甜甜圈):日发布。
主要的更新如下:
重新设计的Android Market手势;支持网络;文字转语音系统(Text-to-Speech);快速搜索框;全新的拍照接口;查看应用程序耗电;支持虚拟私人网络();支持更多的屏幕分辨率;支持OpenCore2媒体引擎;新增面向视觉或听觉困难人群的易用性插件。
Android2.0
主要的更新如下:
优化硬件速度;&Car Home&程序;支持更多的屏幕;改良的用户界面;新的浏览器的用户接口和支持HTML5;新的联系人名单;更好的白色/黑色背景比率;改进Google Maps3.1.2;支持Microsoft Exchange;支持内置相机闪光灯;支持数码变焦;改进的虚拟键盘;支持蓝牙2.1;支持动态桌面的设计。
/2.2.1 Froyo(冻酸奶) :日发布。主要的更新如下:
整体性能大幅度的提升;网络共享功能;的支持;功能;全新的软件商店;更多的应用接口的开发。
Android2.3.x
Gingerbread(姜饼) :日发布。
主要的更新如下:
增加了新的垃圾回收和优化处理事件;原生代码可直接存取输入和感应器事件、EGL/OpenGLES、OpenSL ES;新的管理窗口和生命周期的框架;支持和视频格式,提供和宽频编码,提供了新的音频效果器;支持前置摄像头、SIP/VOIP和(近场通讯);简化界面、速度提升;更快更直观的文字输入;一键文字选择和复制/粘帖;改进的电源管理系统;新的应用管理方式。
Android3.0
Honeycomb(蜂巢):日发布。
主要更新如下:
优化针对平板 ;全新设计的UI增强浏览功能 ;in-app purchases功能。
Android3.1
Honeycomb(蜂巢) :5月11日布发布。
版本主要更新如下:
经过优化的电子邮箱 ;全面支持Google Maps ;将Android手机系统跟平板系统再次合并从而方便开发者;任务管理器可滚动,支持输入设备(、等) ;支持.可以支持XBOX 360无线手柄;支持的变化,能更加容易的定制屏幕widget插件。
Android3.2
Honeycomb(蜂巢):日发布。
版本更新如下:
支持7英寸设备;引入了应用显示缩放功能。
Android4.0
Ice Cream Sandwich(冰激凌三明治):日在香港发布。
安卓2.0版本
版本主要更新如下:
全新的UI;全新的Chrome Lite浏览器,有离线阅读,16标签页,隐身浏览模式等;截图功能;更强大的图片编辑功能;自带照片应用堪比,可以加滤镜、加相框,进行360度全景拍摄,照片还能根据地点来排序;Gmail加入手势、离线搜索功能,UI更强大;新功能People:以联系人照片为核心,界面偏重滑动而非点击,集成了Twitter、Linkedin、Google+等通讯工具。有望支持用户自定义添加第三方服务;新增流量管理工具,可具体查看每个应用产生的流量,限制使用流量,到达设置标准后自动断开网络。
Android4.1
Jelly Bean(果冻豆):日
更快、更流畅、更灵敏;动画的帧速提高至60fps,增加了三倍缓冲;增强通知栏;全新搜索;搜索将会带来全新的UI、智能语音搜索和Google Now三项新功能;桌面插件自动调整大小;加强无障碍操作;和输入法扩展;新的输入类型和功能;新的连接类型。
Android4.2
Android 4.2 Jelly Bean 原生系统用户界面
Jelly Bean(果冻豆):日
Android 4.2沿用“果冻豆”这一名称,以反映这种最新操作系统与Android 4.1的相似性,但Android 4.2推出了一些重大的新特性,具体如下:
Photo Sphere全景拍照功能;键盘手势输入功能;改进锁屏功能,包括锁屏状态下支持桌面挂件和直接打开照相功能等;可扩展通知,允许用户直接打开应用;Gmail邮件可缩放显示;Daydream屏幕保护程序;用户连点三次可放大整个显示频,还可用两根手指进行旋转和缩放显示,以及专为盲人用户设计的语音输出和手势模式导航功能等;支持Miracast无线显示共享功能;Google Now现可允许用户使用Gamail作为新的数据来源,如改进后的航班追踪功能、酒店和餐厅预订功能以及音乐和电影推荐功能等。
Android4.4
KitKat(奇巧巧克力): 2013年下半年
日凌晨,谷歌对外公布了Android新版本Android 4.4KitKat(奇巧巧克力),并且于日正式发布,新的4.4系统更加整合了自家服务,力求防止安卓系统继续碎片化、分散化。
Android5.0
Lollipop(棒棒糖):美国太平洋时间日
Android 5.0 系统使用一种新的设计风格。从图片上就能看到一些全新的设计。从图片上看,这套设计图对 Android 系统的桌面图标及部件的透明度进行的稍稍的调整,并且各种桌面小部件也可以重叠摆放。虽然调整桌面部件透明度对 Android 系统来说并不算什么新鲜的功能,但是加入了透明度的改进。界面加入了五彩缤纷的颜色、流畅的动画效果,呈现出一种清新的风格。采用这种设计的目的在于统一 Android 设备的外观和使用体验,不论是手机、平板还是多媒体播放器。
Android6.0
Marshmallow(棉花糖):日
新系统的整体设计风格依然保持扁平化的MeterialDesign风格。Android6.0在对软件体验与运行性能上进行了大幅度的优化。据测试,Android6.0可使设备续航时间提升30%。
Android7.0
Nougat(牛轧糖):日
Android8.0
Android Oreo (8.0):2017 年 8 月 21 日
Android系统架构
Android的系统架构和其操作系统一样,采用了分层的架构。
Android结构
从架构图看,Android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和Linux层。
Android会同一系列核心应用程序包一起发布,该应用程序包包括客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。
应用程序框架
开发人员也可以完全访问核心应用程序所使用的框架。该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性)。同样,该应用程序重用机制也使用户可以方便的替换程序组件。
隐藏在每个应用后面的是一系列的服务和系统, 其中包括;
丰富而又可扩展的(Views),可以用来构建应用程序, 它包括列表(Lists),网格(Grids),文本框(Text boxes),按钮(Buttons), 甚至可嵌入的web浏览器。
内容提供器(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库), 或者共享它们自己的数据
资源管理器(Resource Manager)提供 非代码资源的访问,如本地字符串,图形,和布局文件(Layout files )。
通知管理器 (Notification Manager) 使得应用程序可以在状态栏中显示自定义的提示信息。
活动管理器( Activity Manager) 用来管理应用程序生命周期并提供常用的导航回退功能。
系统运行库
Android 包含一些C/C++库,这些库能被中不同的使用。它们通过 Android 应用程序框架为开发者提供服务。以下是一些核心库:
* 系统 C 库 - 一个从继承来的标准C系统函数库 Libc ), 它是专门为基于Embedded linux的设备定制的。
* 媒体库 - 基于PacketVideo OpenCORE;该库支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件。编码格式包括MPEG4, H.264, MP3, AAC, AMR, JPG, PNG 。
* Surface Manager - 对显示子系统的管理,并且为多个应用程序提 供了和D图层的无缝融合。
* LibWebCore - 一个最新的引擎用,支持和一个可嵌入的web视图。
Android系统结构
Android系统内核
Android 是运行于Linux kernel之上,但并不是/Linux。因为在一般GNU/Linux 里支持的功能,Android 大都没有支持,包括、、、、、及等都被移除掉了。Android又以Bionic 取代Glibc、以Skia 取代Cairo、再以取代等等。Android 为了达到商业应用,必须移除被GNU GPL授权证所约束的部份,例如Android将驱动程序移到 Userspace,使得Linux driver 与 Linux kernel彻底分开。Bionic/Libc/Kernel/ 并非标准的Kernel header files。Android 的 Kernel header 是利用工具由 Linux Kernel header 所产生的,这样做是为了保留常数、数据结构与宏。
Android 的 Linux kernel控制包括安全(),存储器管理(Memory Management),程序管理(Process Management),网络堆栈(Network Stack),模型(Driver Model)等。下载Android源码之前,先要安装其构建工具 Repo来初始化源码。Repo 是 Android 用来辅助Git工作的一个工具。
Android后缀简介
APK是安卓应用的后缀,是AndroidPackage的缩写,即Android安装包(apk)。APK是类似Symbian Sis或Sisx的文件格式。通过将APK文件直接传到Android模拟器或Android手机中执行即可安装。apk文件和sis一样,把android sdk编译的工程打包成一个安装程序文件,格式为apk。 APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是Dalvik VM executes的全称,即Android Dalvik执行程序,并非Java ME的字节码而是Dalvik字节码。
APK文件结构
一个APK文件结构为:
1. META-INF\ (注:Jar文件中常可以看到);
2. res\ (注:存放资源文件的目录) ;
3. AndroidManifest.xml (注:程序全局配置文件) ;
4. classes.dex (注:Dalvik字节码);
5. resources.arsc (注:编译后的二进制资源文件)。
总结下我们发现Android在运行一个程序时首先需要UnZip,然后类似Symbian那样直接执行安装,和Windows Mobile中的PE文件有区别,这样做对于程序的保密性和可靠性不是很高,通过dexdump命令可以反编译,但这样做符合发展规律,微软的 Windows Gadgets或者说WPF也采用了这种构架方式。
在Android平台中dalvik vm的执行文件被打包为apk格式,最终运行时加载器会解压然后获取编译后androidmanifest.xml文件中的permission分支相关的安全访问,但仍然存在很多安全限制,如果你将apk文件传到/system/app文件夹下会发现执行是不受限制的。
最终我们平时安装的文件可能不是这个文件夹,而在android rom中系统的apk文件默认会放入这个文件夹,它们拥有着root权限。
Android硬件抽像层
Android 的(硬件抽像层)是能以封闭源码形式提供硬件驱动模块。HAL 的目的是为了把 Android framework 与 Linux kernel 隔开,让 Android 不至过度依赖 Linux kernel,以达成 Kernel independent 的概念,也让 Android framework 的开发能在不考量驱动程序实现的前提下进行发展。
HAL stub 是一种代理人(Proxy)的概念,Stub 是以 *.so 档的形式存在。Stub 向 HAL“提供”操作函数(Operations),并由 Android runtime 向 HAL 取得 Stub 的Operations,再 Callback 这些操作函数。HAL 里包含了许多的 Stub(代理人)。Runtime 只要说明“类型”,即 Module ID,就可以取得操作函数。
Android中介软件
操作系统与应用程序的沟通桥梁,应用分为两层:函数层(Library)和(Virtual Machine)。 Bionic是 Android 改良libc的版本。Android 同时包含了Webkit,所谓的Webkit 就是Apple Safari 浏览器背后的引擎。Surface flinger 是就2D或3D的内容显示到屏幕上。Android使用工具链(Toolchain)为Google自制的Bionic Libc。
Android采用OpenCORE作为基础多媒体框架。Open CORE可分7大块:PVPlayer、PVAuthor、Codec、PacketVideo Multimedia Framework(PVMF)、Operating System Compatibility Library(OSCL)、Common、OpenMAX。
Android 使用skia 为核心图形引擎,搭配OpenGL/ES。skia与Linux Cairo功能相当,但相较于Linux Cairo, skia 功能还只是雏形的。2005年Skia公司被Google收购,2007年初,Skia GL源码被公开,Skia 也是Google Chrome 的图形引擎。
Android的多媒体数据库采用SQLite数据库系统。数据库又分为共用数据库及私用数据库。用户可通过ContentResolver类(Column)取得共用数据库。
Android的中间层多以Java 实现,并且采用特殊的Dalvik 虚拟机(Dalvik Virtual Machine)。Dalvik虚拟机是一种“暂存器型态”(Register Based)的Java虚拟机,变量皆存放于暂存器中,虚拟机的指令相对减少。
Dalvik虚拟机可以有多个实例(Instance), 每个Android应用程序都用一个自属的Dalvik虚拟机来运行,让系统在运行程序时可达到优化。Dalvik 虚拟机并非运行Java字节码(Bytecode),而是运行一种称为.dex格式的文件。
Android安全权限机制
Android本身是一个权限分立的。在这类操作系统中,每个应用都以唯一的一个系统识别身份运行(Linux用户ID与群组ID)。系统的各部分也分别使用各自独立的识别方式。Linux就是这样将应用与应用,应用与系统隔离开。
系统更多的安全功能通过权限机制提供。权限可以限制某个特定进程的特定操作,也可以限制每个权限对特定数据段的访问。
Android安全架构的核心设计思想是,在默认设置下,所有应用都没有权限对其他应用、系统或用户进行较大影响的操作。这其中包括读写用户隐私数据(联系人或电子邮件),读写其他应用文件,访问网络或阻止设备待机等。
安装应用时,在检查程序签名提及的权限,且经过用户确认后,软件包安装器会给予应用权限。从用户角度看,一款Android应用通常会要求如下的权限:
拨打电话、发送短信或彩信、修改/删除上的内容、读取联系人的信息、读取日程信的息,写入日程数据、读取电话状态或识别码、精确的(基于)地理位置、模糊的(基于网络获取)地理位置、创建蓝牙连接、对互联网的完全访问、查看网络状态,查看WiFi状态、避免手机待机、修改系统全局设置、读取同步设定、开机自启动、重启其他应用、终止运行中的应用、设定偏好应用、震动控制、拍摄图片等。
一款应用应该根据自身提供的功能,要求合理的权限。用户也可以分析一款应用所需权限,从而简单判定这款应用是否安全。如一款应用是不带广告的单机版,也没有任何附加的内容需要下载,那么它要求访问网络的权限就比较可疑。
Android应用组件
Android开发四大组件分别是:活动(): 用于表现功能。服务(): 后台运行服务,不提供界面呈现。广播接收器(BroadcastReceiver):用于接收广播。内容提供商(): 支持在多个应用中存储和读取数据,相当于。
Android活动
Android 中,Activity是所有程序的根本,所有程序的流程都运行在Activity 之中,Activity可以算是开发者遇到的最频繁,也是Android 当中最基本的模块之一。在Android的程序当中,Activity 一般代表屏幕的一屏。如果把手机比作一个浏览器,那么Activity就相当于一个网页。在Activity 当中可以添加一些Button、Check box 等控件。可以看到Activity 概念和网页的概念相当类似。
一般一个Android 应用是由多个Activity 组成的。这多个Activity 之间
可以进行相互跳转,例如,按下一个按钮后,可能会跳转到其他的Activity。和网页跳转稍微有些不一样的是,Activity 之间的跳转有可能返回值,例如,从Activity A 跳转到Activity B,那么当Activity B 运行结束的时候,有可能会给Activity A 一个返回值。这样做在很多时候是相当方便的。
当打开一个新的屏幕时,之前一个屏幕会被置为暂停状态,并且压入历史堆栈中。用户可以通过回退操作返回到以前打开过的屏幕。可以选择性的移除一些没有必要保留的屏幕,因为Android会把每个应用的开始到当前的每个屏幕保存在堆栈中。
(Android的应用图册图片来源:
Android服务
Service 是android 系统中的一种组件,
安卓不同版本图片
它跟Activity 的级别差不多,但是他不能自己运行,只能后台运行,并且可以和其他组件进行交互。Service 是没有界面的长生命周期的代码。是一种程序,它可以运行很长时间,但是它却没有用户界面。这么说有点枯燥,来看个例子。打开一个音乐播放器的程序,这个时候若想上网了,那么,打开Android浏览器,这个时候虽然已经进入了浏览器这个程序,但是,歌曲播放并没有停止,而是在后台继续一首接着一首的播放。其实这个播放就是由播放音乐的Service进行控制。当然这个播放音乐的Service也可以停止,例如,当播放列表里边的歌曲都结束,或者用户按下了停止音乐播放的快捷键等。Service 可以在和多场合的应用中使用,比如播放多媒体的时候用户启动了其他Activity这个时候程序要在后台继续播放,比如检测SD 卡上文件的变化,再或者在后台记录地理信息位置的改变等等,总之服务嘛,总是藏在后头的。
开启Service有两种方式:
(1) Context.startService():Service会经历onCreate -& onStart(如果Service还没有运行,则android先调用onCreate()然后调用onStart();如果Service已经运行,则只调用onStart(),所以一个Service的onStart方法可能会重复调用多次 );StopService的时候直接onDestroy,如果是调用者自己直接退出而没有调用StopService的话,Service会一直在后台运行。该Service的调用者再启动起来后可以通过stopService关闭Service。 注意,多次调用Context.startservice()不会嵌套(即使会有相应的onStart()方法被调用),所以无论同一个服务被启动了多少次,一旦调用Context.stopService()或者StopSelf(),他都会被停止。补充说明:传递给StartService(0的Intent对象会传递给onStart()方法。调用顺序为:onCreate --& onStart(可多次调用) --& onDestroy。
(2) Context.bindService():Service会经历() --&onBind(),onBind将返回给客户端一个IBind接口实例,IBind允许客户端回调服务的方法,比如得到Service运行的状态或其他操作。这个时候把调用者(Context,例如Activity)会和Service绑定在一起,退出了,Srevice就会调用onUnbind --& onDestroyed相应退出,所谓绑定在一起就共存亡了。
Android广播接收器
在Android 中,是一种广泛运用的在应用程序之间传输信息的机制。而BroadcastReceiver 是对发送出来的Broadcast进行过滤接受并响应的一类组件。可以使用BroadcastReceiver 来让应用对一个外部的事件做出响应。这是非常有意思的,例如,当电话呼入这个外部事件到来的时候,可以利用BroadcastReceiver 进行处理。例如,当下载一个程序成功完成的时候,仍然可以利用BroadcastReceiver 进行处理。BroadcastReceiver不能生成UI,也就是说对于用户来说不是透明的,用户是看不到的。BroadcastReceiver通过NotificationManager 来通知用户这些事情发生了。BroadcastReceiver 既可以在AndroidManifest.xml 中注册,也可以在运行时的代码中使用Context.registerReceiver()进行注册。只要是注册了,当事件来临的时候,即使程序没有启动,系统也在需要的时候启动程序。各种应用还可以通过使用Context.sendBroadcast () 将它们自己的Intent Broadcasts广播给其他应用程序。
Android内容提供
Content Provider 是Android提供的第三方应用数据的访问方案。
中,对数据的保护是很严密的,除了放在SD卡中的,一个应用所持有的数据库、文件等内容,都是不允许其他直接访问的。Andorid当然不会真的把每个应用都做成一座孤岛,它为所有应用都准备了一扇窗,这就是Content Provider。应用想对外提供的数据,可以通过派生Content Provider类, 封装成一枚Content Provider,每个Content Provider都用一个uri作为独立的标识,形如:content://com.xxxxx。所有东西看着像的样子,但实际上,它比REST 更为灵活。和REST类似,uri也可以有两种类型,一种是带id的,另一种是列表的,但实现者不需要按照这个模式来做,给id的uri也可以返回列表类型的,只要调用者明白,就无妨,不用苛求所谓的REST。
Android平台优势
Android开放性
在优势方面,Android平台首先就是其开放性,开发的平台允许任何移动终端厂商加入到Android联盟中来。显著的开放性可以使其拥有更多的开发者,随着用户和应用的日益丰富,一个崭新的平台也将很快走向成熟。
开放性对于Android的发展而言,有利于积累人气,这里的人气包括消费者和厂商,而对于消费者来讲,最大的受益正是丰富的软件资源。开放的平台也会带来更大竞争,如此一来,消费者将可以用更低的价位购得心仪的手机。
Android丰富的硬件
这一点还是与Android平台的开放性相关,由于Android的开放性,众多的厂商会推出千奇百怪,功能特色各具的多种产品。功能上的差异和特色,却不会影响到数据同步、甚至软件的兼容,如同从风格手机一下改用苹果iPhone,同时还可将Symbian中优秀的软件带到上使用、联系人等资料更是可以方便地转移。
Android方便开发
Android平台提供给第三方开发商一个十分宽泛、自由的环境,不会受到各种条条框框的阻扰,可想而知,会有多少新颖别致的软件会诞生。但也有其两面性,血腥、暴力、情色方面的程序和游戏如何控制正是留给Android难题之一。
AndroidGoogle应用
在互联网的Google已经走过10年度历史,从搜索巨人到全面的互联网渗透,Google服务如地图、邮件、搜索等已经成为连接用户和互联网的重要纽带,而Android平台手机将无缝结合这些优秀的Google服务。
解读词条背后的知识
.凤凰网[引用日期]
.猎云网[引用日期]
.创意优优花园网[引用日期]
.Open Handset Alliance [引用日期]
.电子发烧友网[引用日期]
.搜狐网[引用日期]
.网易[引用日期]
.TechWeb.[引用日期]
.参考消息.[引用日期]
.TechWeb.[引用日期]
.驱动之家[引用日期]
.新浪[引用日期]
.安卓网.[引用日期]
. Android官网(外文网)[引用日期]
.IT商业新闻网[引用日期]
本词条认证专家为
副理事长兼秘书长
中国通信学会
中国通信学会
原武汉邮电科学研究院
中国联通网络技术研究院
工业和信息化部电信研究院互联网中心
副院长兼总工程师
中国移动设计院
首席架构师业务总工程师
中兴通讯股份有限公司
百度公司发展研究中心
中国通信学会科普中国百科科学词条评审专家委员会
中国通信学会是全国通信...
提供资源类型:内容
清除历史记录关闭

我要回帖

更多关于 java开发c s 的文章

 

随机推荐