导航:首页 > 操作系统 > androidone框架

androidone框架

发布时间:2022-12-28 08:15:51

‘壹’ 哪些品牌的手机使用的是安卓原生系统

哪些品牌的手机使用的是android原生系统

目前来说除了被收购的摩托罗拉以外,不会一个品牌完全使用原生系统,都做了优化和大量修改,谁也不可能一直为谷歌打工不是么?

如果排除自行刷原生rom的话,谷歌的手机就那么几款,所谓的“谷歌亲儿子”

大儿子 Google Nexus One是谷歌公司于2010年1月推出的第一部自有品牌3G智慧手机。HTC

二儿子 Google Nexus S是一款搭载android2.3系统的旗舰智慧手机,三星代工;

三儿子 Google Galaxy Nexus这款手机由谷歌设计,三星公司进行代工生产;

四儿子 Google Nexus 4这款手机由谷歌设计,LG进行代工生产。

Android(安卓),是一个以linux为基础的开源移动装置作业系统,主要用于智慧手机和平板电脑,由Google成立的Open Handset Alliance(OHA,开放手持装置联盟)持续领导与开发中。Android已释出的最新版本为Android 8.1。

Android系统最初由安迪·鲁宾(Andy Rubin)等人开发制作 ,最初开发这个系统的目的是建立一个数码相机的先进作业系统;但是后来发现市场需求不够大,加上智慧手机市场快速成长,于是Android被改造为一款面向智慧手机的作业系统。

于2005年8月被美国科技企业Google收购。2007年11月,Google与84家制造商、开发商及电信营运商成立开放手持装置联盟来共同研发改良Android系统,随后,Google以Apache免费开放原始码许可证的授权方式,释出了Android的原码,让生产商推出搭载Android的智慧手机,Android后来更逐渐拓展到平板电脑及其他领域上。

安卓原生系统怎样使用xposed框架

Xposed 框架需要使用安装器进行安装,所以我们需要先安装Xposed 框架安装器,安装完成开启后点击框架(如图中红框位置),进行框架的安装。
安装 Xposed 框架
点选后进入框架安装、升级接口,我们点选“安装/更新”,会出现ROOT授权提示,许可即可。这里我给大家个提醒,为了Xposed 框架及以后各种模组的良好执行建议使用好的授权管理,目前各种一键ROOT生成的各种授权管理程式可能无法满足Xposed 框架及以后各种模组的需求。建议使用SuperSU Pro。Xposed 框架安装完成后重启手机才能启用,可直接点选重启也可手动重启。
选用模组
我们安装Xposed 框架是为了使用各种模组,而增强手机的各种功能。在Xposed 框架安装器中可以点选“下载”进入模组仓库下载自己需要的模组,不过这里全是英文,可能与我一样英文不好的朋友用起来有难度。还有个方法就是,直接安装需要的模组后,在Xposed 框架安装器中点选“模组”进入模组接口进行勾选,这里以红色守护的试验性功能为例,勾选后模组就开始发挥作用了。

LG p970是安卓原生系统吗?

不是,都是LG基于安卓优化过的UI,可以刷第三方的ROM,目前LG只给出了2.2正式版跟2.3测试版

有哪些手机使用android原生系统的

至少双核手机RAM要足够EVO原要让奸商帮刷民间像少原且原没稳定点

安卓原生系统的手机可以和iphone相比吗

品牌不同,配置、设计理念、适用人群等也是不一样的,各有优势,建议根据需求及喜好选择合适的机型。
如需了解三星产品的详细机型资讯,请登陆官网-点选右上角放大镜图示输入型号查询。

想问下,Gigaset ME的系统是安卓原生系统吗?

Gigaset ME的系统是Android OS 5.1

哪些手机采用安卓原生系统,没有经过修改的?

瓦砾8级2011-03-03不多,亲儿子只有Nexus one,现在还有Nexus S 。 追问: 这两款手机在哪里可以买到?多少钱? 回答: Nexus one已经没有全新的了,应该是,据说有韩版的,价格在3000多,全新的,二手的新一点点也差不多这个价,2500以上。Nexus S 价格在4500多。途径一般是淘宝,或者eBay。 追问: 定制的系统和原生系统使用起来有差别吗?哪个软体相容性更好? 回答: 同版本核心一样,只有接口UI不同,没用过不清楚。破解和取得ROOT许可权,可以刷第三方的系统,有人就是喜欢改的乱七八糟的,有人却喜欢原生态的,简单的。软体相容都差不多,跟系统版本有关。目前Nexus one,现在还有Nexus S 是更新到2.3.3,其他机器都只有2.1或者2.2,介于CPU和记忆体的关系强刷2.3.3也没有好处。此类机器“刷”就是一种乐趣。 追问: 现在安卓哪个版本的系统最稳定?一般的手机都能刷到这个版本吗? 回答: 用过的版本都很稳定,1.5 /2.0/2.1/2.2/2.2.2/2.3.3 不是所有机器都能刷原厂韧体,你买了就知道了。产品太多,不一一说了。 追问: 所有版本的软体都可以通用吗? 回答: 有要求版本的,其他基本通用 追问: 分辩率不同对软体的相容有影响吗? 回答: 电视机不同,DVD机器有影响吗?

‘贰’ 关于android

Android一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。目前最好的是Android2.0的摩托罗拉Droid
[编辑本段]简介
Android是基于Linux内核的软件平台和操作系统,早期由Google开发,后由开放手机联盟Open Handset Alliance)开发。它采用了软件堆层(software stack,又名以软件叠层)的架构,主要分为三部分。低层以Linux内核工作为基础,只提供基本功能;其他的应用软件则由各公司自行开发,以java作为编写程序的一部分。另外,为了推广此技术,Google和其它几十个手机公司建立了开放手机联盟。Android在未公开之前常被传闻为Google电话或gPhone。大多传闻认为Google开发的是自己的手机电话产品,而不是一套软件平台。到了2010年1月,Google开始发表自家品牌手机电话的Nexus One。目前最好的是Android2.1
对手机行业的影响
已经与HTC、NTT DoCoMo、KDDI、Motorola等世界移动领域34家公司于免费提供达成一致。今后对于移动通讯的影响势必会进一步体现出来。但是如此广泛公司的同盟是否能够有效运作及以持久值得拭目以待。MOTO Droid
Android手机

2008年9月22日,美国运营商T-MobileUSA在纽约正式发布第一款Google手机——T-Mobile G1。该款手机为台湾宏达电代工制造,是世界上第一部使用Android操作系统的手机,支持WCDMA/HSPA网络,理论下载速率7.2Mbps,并支持Wi-Fi。
(右图为搭载最新Google Android 2.0的Moto Droid)
[编辑本段]基本情况
Android 是Google开发的基于Linux平台的开源手机操作系统(在华注册商标名为“安致”)。它摩托罗拉的首款Android手机CLIQ包括操作系统、用户界面和应用程序 —— 移动电话工作所需的全部软件,而且不存在任何以往阻碍移动产业创新的专有权障碍,号称是首个为移动终端打造的真正开放和完整的移动软件。Google与开放手机联盟合作开发了 Android,这个联盟由包括中国移动、摩托罗拉、高通、宏达电和 T-Mobile 在内的 30 多家技术和无线应用的领军企业组成。Google通过与运营商、设备制造商、开发商和其他有关各方结成深层次的合作伙伴关系,希望借助建立标准化、开放式的移动电话软件平台,在移动产业内形成一个开放式的生态系统。
它采用了软件堆层(software stack,又名软件叠层)的架构,主要分为三部分:底层以Linux核心为基础,由c语言开发,只提供基本功能。中间层包括函数库Library和虚拟机Virtual Machine,由C+开发。最上层是各种应用软件,包括通话程序,短信程序等,应用软件则由各公司自行开发,以java编写。
为了推广此技术,Google和其它几十个手机公司建立了开放手机联盟(Open Handset Alliance)。
Android操作系统的组件如下图:
Android 作为谷歌企业战略的重要组成部分,将进一步推进“随时随地为每个人提供信息”这一企业目标的实现。全球为数众多的移动电话用户正在使用各种基于 Android 的电话。谷歌的目标是让(移动通讯)不依赖于设备甚至平台。出于这个目的,Android 将补充,而不会替代谷歌长期以来奉行的移动发展战略:通过与全球各地的手机制造商和移动运营商结成合作伙伴,开发既有用又有吸引力的移动服务,并推广这些产品。
[编辑本段]团队成员
白色版HTC G1Android平台的研发队伍阵容强大,包括摩托罗拉、Google、HTC(宏达电)、PHILIPS、T-Mobile、高通、魅族、三星、LG以及中国移动在内的34家企业,都将基于该平台开发手机的新型业务,应用之间的通用性和互联性将在最大程度上得到保持。“开放手机联盟”表示,Android平台可以促使移动设备的创新,让用户体验到最优越的移动服务,同时,开发商也将得到一个新的开放级别,更方便的进行协同合作,从而保障新型移动设备的研发速度。
34家企业的加盟,也将大大降低新型手机设备的研发成本,完全整合的“全移动功能性产品”成为“开放手机联盟”的最终目标。
这34家企业中并不包含把持Symbian的诺基亚,以及凭借着iPhone风光正在的苹果公司,美国运营商AT&T和Verizon,当然微软没有加入,独树一帜的加拿大RIM和他们的Blackberry也被挡在门外。
手机开放联盟大家庭成员名单:
一、手机制造商:
台湾宏达国际电子(HTC)(Palm等多款智能手机的代工厂)
摩托罗拉(美国最大的手机制造商)
韩国三星电子(仅次于诺基亚的全球第二大手机制造商)
韩国LG电子
中国移动(全球最大的移动运营商,截至09年9月底 有7.03亿用户)
日本KDDI(2900万用户)
日本NTT DoCoMo(5200万用户)
美国Sprint Nextel(美国第三大移动运营商,5400万用户)
意大利电信(Telecom Italia)(意大利主要的移动运营商,3400万用户)
西班牙Telefónica (在欧洲和拉美有1.5亿用户)
T-Mobile(德意志电信旗下公司,在美国和欧洲有1.1亿用户)
二、半导体公司:
Audience Corp(声音处理器公司)
Broadcom Corp(无线半导体主要提供商)
英特尔(Intel)
Marvell Technology Group
Nvidia (图形处理器公司)
SiRF(GPS技术提供商)
Synaptics(手机用户界面技术)
德州仪器(Texas Instruments)
高通(Qualcomm )
惠普HP(Hewlett-Packard Development Company, L.P)
三、软件公司:
Aplix
Ascender
eBay的Skype
Esmertec
Living Image
NMS Communications
Noser Engineering AG
Nuance Communications
PacketVideo
SkyPop
Sonix Network
TAT-The Astonishing Tribe
Wind River Systems
[编辑本段]特性
·应用程序框架 支持组件的重用与替换
·Dalvik虚拟机 专门为移动设备做了优化
·内部集成浏览器 该浏览器基于开源的WebKit 引擎
·优化的图形库 包括2D和3D图形库,3D图形库基于OpenGL ES 1.0 (硬件加速可选)
·#SQLite 用作结构化的数据存储
·多媒体支持 包括常见的音频、视频和静态印象文件格式 (如 MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)
·GSM电话 (依赖于硬件)
·蓝牙Bluetooth, EDGE, 3G, and WiFi (依赖于硬件)
·照相机,GPS,指南针,和加速度计 (依赖于硬件)
·丰富的开发环境 包括设备模拟器,调试工具,内存及性能分析图表,和Eclipse集成开发环境插件
[编辑本段]架构
下图显示的是Android操作系统的主要组件。每一部分将会在下面具体描述。
Android架构
[编辑本段]应用程序
Android会同一个核心应用程序包一起发布,该应用程序包包括email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是用JAVA编写的。
Android 应用程序框架开发者也完全可以访问核心应用程序所使用的API框架。该应用程序架构用来简化组件软件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。该应用程序重用机制使得组建可以被用户替换。
以下所有的应用程序都由一系列的服务和系统组成,包括:
·一个可扩展的视图(Views )可以用来建应用程序,包括列表(lists),网格(grids),文本框(text boxes),按钮(buttons),甚至包括一个可嵌入的web浏览器
·内容管理器(Content Providers )使得应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们自己的数据。
·一个资源管理器 (Resource Manager)提供非代码资源的访问,如本地字符串,图形,和分层文件( layout files )。
·一个通知管理器 (Notification Manager)使得应用程序可以在状态栏中显示客户通知信息。
·一个活动类管理器 (Activity Manager)用来管理应用程序生命周期并提供常用的导航回退功能。
有关更多的细节和怎样从头写一个应用程序,请参考 写一个 Android 应用程序 部分。
Android 程序库Android 包括一个被 Android 系统中各种不同组件所使用的 C/C++ 库集。该库通过 Android 应用程序框架为开发者提供服务。以下是一些主要的核心库:
系统 C 库 - 一个从 BSD 继承来的标准 C 系统函数库( libc ),专门为基于 embedded linux 的设备定制。 媒体库 - 基于 PacketVideo OpenCORE;该库支持录放,并且可以录制许多流行的音频视频格式,还有静态印像文件包括MPEG4, H.264, MP3, AAC, AMR, JPG, PNG。 Surface Manager - 对显示子系统的管理,并且为多个应用程序提供2D和3D图层的无缝融合。 LibWebCore - 一个最新的web浏览器引擎用来支持Android浏览器和一个可嵌入的web视图。 SGL - 一个内置的2D图形引擎 3D libraries - 基于OpenGL ES 1.0 APIs实现;该库可以使用硬件3D加速(如果可用)或者使用高度优化的3D软加速。 FreeType - 位图(bitmap)和向量(vector)字体显示。 SQLite - 一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎。
Android 运行库
Android 包括了一个核心库,该核心库提供了JAVA编程语言核心库的大多数功能。
每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。Dalvik是针对于同时高效地运行多个VMs来实现的。Dalvik虚拟机执行.dex的Dalvik可执行文件,该格式文件针对最小内存使用做了优化。该虚拟机是基于寄存器的,所有的类都经由JAVA汇编器编译,然后通过SDK中的dx工具转化成.dex格式由虚拟机执行。
Dalvik虚拟机依赖于linux的一些功能,比如线程机制和底层内存管理机制。
Linux 内核Android 的核心系统服务依赖于 Linux 2.6 内核,如安全性,内存管理,进程管理,网络协议栈和驱动模型。 Linux 内核也同时作为硬件和软件堆栈之间的硬件抽象层。
[编辑本段]硬件产品
已发布(预装)
GOOGLE(HTC代工) Nexus one
HTC Dream
HTC Magic
HTC Hero
HTC Tattoo
MOTO CLIQ(DEXT)
MOTO Droid(Milestone)
MOTO BackFlip
MOTO XT800
MOTO XT701
MOTO XT710
Sony Ericsson X10
Qigi i6
Acer A1
HKC Pearl
HKC Imobile v413
Samsung I7500
Samsung i5700
售后安装
一些用户已经能够(某些黑客,以及有限的功能)安装Android在其它操作系统的移动设备之上:
OpenMoko手机 (Neo FreeRunner 及 Neo 1973)Motorola A1200 MingHTC VogueHTC PolarisHTC KaiserHTC Touch Diamond: 并非所有功能都被许可 (包括 Wifi)HTC Touch Pro诺基亚 N810诺基亚 770Asus EeePC 701Asus EeePC 1000HTouch Book from Always InnovatingDell Axim x51vHTC Touch HD: 并非所有功能都被许可 (包括 Wifi和音频语音通话)Samsung Omnia: 只有基本功能(没有相机或WiFi,需要安装在SD卡中)Sharp Zaurus
[编辑本段]未来发展
老牌智能手机软件平台制造商Symbian发言人则表示:Google的android只不过是另一个linux,symbian对其它软件与其形成的竞争并不感到担心。除了北美之外,Symbian在其它地区智能手机市场都占有大部分市场份额。
与iPhone相似,Android采用WebKit浏览器引擎,具备触摸屏、高级图形显示和上网功能,用户能够在手机上查看电子邮件、搜索网址和观看视频节目等,比iPhone等其他手机更强调搜索功能,界面更强大,可以说是一种融入全部Web应用的单一平台。
但其最震撼人心之处在于Android手机系统的开放性和服务免费。Android是一个对第三方软件完全开放的平台,开发者在为其开发程序时拥有更大的自由度,突破了iPhone等只能添加为数不多的固定软件的枷锁;同时与Windows Mobile、Symbian等厂商不同,Android操作系统免费向开发人员提供,这样可节省近三成成本。
Android项目目前正在从手机运营商、手机厂商、开发者和消费者那里获得大力支持。谷歌移动平台主管安迪·鲁宾(Andy Rubin)表示,与软件开发合作伙伴的密切接触正在进行中。从去年11月开始,谷歌开始向服务提供商、芯片厂商和手机销售商提供Android平台,并组建“开放手机联盟”,其成员超过30家。
[编辑本段]市场前景
Google手机于08年10月22日正式上市,与运营商捆绑的合约价为179美元(约合人民币1200元),现有的T-Mobile用户可以通过网络订购。在10月22日发布当天,将有22个国家和地区可以买到谷歌手机。在11月,将增至27个国家和地区。
谷歌手机将只能在T-Mobile网络内使用,将会有SIM卡锁定限制。T-Mobile USA提供了两种流量和短信近曝光的moto sholes(也有人称之为moto tao)将搭载最新的android2.0操作系统包月计划。第一档为25美元,包括不限制的网络流量,以及一定数量的短信;第二档为35美元,包括不限制的网络流量和不限数量的短信。G1支持各种谷歌的服务,包括Gmail、Google Maps、YouTube、Google日历和Google Talk,内置Chrome Lite浏览器。使用这款手机也需要Gmail账号。
“我爱死我的G1了!”谷歌联合创始人拉里·佩奇(Larry Page)憧憬:“对于我来说,谷歌手机最激动人心的一点就是它的未来。它的功能很强,正如几年前的电脑一样。你可以上网,安装软件。”
T-Mobile USA为德国电信旗下移动子公司,运营GSM/HSPA网络,拥有用户近3000万。此次发布的谷歌手机采用高通MSM7201A处理器,支持7.2Mbps下载速率,美国运营商3G网络设定的套餐速率一般可达1Mbps以上。MSM7201A为单芯片、双核,整合硬件加速多媒体功能、支持3D图形,300万像素的摄像功能可以扫描条形码,并且有GPS功能。
在美国四大移动运营商中,T-Mobile USA处于相对弱势的地位,不过T-Mobile在欧洲有更为强势的是CDMA EV-DO网络,而T-Mobile USA和苹果iPhone的独家运营商AT&T为GSM/HSPA网络,后者在2005年12月就推出了全球第一个HSDPA商用服务。
T-Mobile USA今年5月方才在纽约推出了3G服务,目前已经在奥斯汀、巴尔的摩、波士顿、达拉斯、休斯敦、拉斯维加斯、迈阿密、明尼阿波利斯、凤凰城、波特兰、圣安东尼奥和圣地亚哥等12个城市增加了3G覆盖,公司计划年底前将3G覆盖的城市从目前的13个增加到27个,能够为其超过2/3的用户提供3G服务。

市场手机品牌

摩托罗拉
摩托罗拉沉寂了一年终于要爆发了!由于受到金融危机的影响,摩托罗拉在过去的一年里显得极为沉寂,似乎突然蒸发掉似的,财报上的体现也是在不断亏损,甚至还一度有传言说摩托罗拉打算放弃手机市场。
不过摩托罗拉并没有这样做,而是卧薪尝胆研发Android智能手机,意欲通过Android挽回失去的市场份额。9月10日摩托罗拉CLIQ的发布已经为摩托罗拉挣足了掌声,接下来应该是摩托罗拉翻身仗的关键了。
摩托罗拉的首款Android手机CLIQ
摩托罗拉曾说过,CLIQ只不过是一款中端手机,很明显这款Sholes才是摩托罗拉的Android旗舰。他们先是和Verizon推出了一则名“DroidDoes(Android能做到)”的广告,从多方面告诉用户苹果不能而Android能。
现在他又通过邮件来宣传这款手机,信封的封套上写着“发布之日即将来临”,并在一个破洞之后露出了炙热的眼睛。而在里面的信封上则表明了这款手机的一些特色,比如速度快,可以在黑暗中拍照,支持谷歌语音搜索等。
据台湾媒体报道,一位分析师称,作为苹果iPhone在今年假日季节到来之时的竞争产品,美国最大的移动电话制造商摩托罗拉的智能手机Droid自11月6日通过Verizon Wireless推出以来,其销售量已经达到80万部。 摩托罗拉智能手机Droid,运行的是谷歌Android操作系统。纽约RBCCapitalMarkets公司分析师马克·休(MarkSue)周日在一份研究报告中表示,该数字将使得摩托罗拉在第四季度按计划实现销售100万部目标。
马克·休称,摩托罗拉的销售业绩一直受到VerizonWireless广告促销和商店促销的推动。Verizon Wireless把Droid作为iPhone新版本的竞争产品向苹果发起了挑战。苹果新版iPhone截止6月份的第一个周末销售量就超过100万部。
马克·休称:“在假日季节到来曾用名,VerizonWireless加强了Droid的营销。摩托罗拉在产品方面得很出色,我们对超过100家商店的调查显示,该产品需求很强劲。”这位分析师表示,摩托罗拉股价表现将好于竞争对手。
市场研究公司NPDGroup今年8月份称,苹果的iPhone和RIM的BlackBerryCurve手机第二季度在美国智能手机市场处于领先位置。高端手机能够让用户发送电邮并且编辑文档。
周一在纽约证券交易所,摩托罗拉股价下跌0.19美元,报收于8.01美元,跌幅2.3%。摩托罗拉股价今年以来已经上涨81%。总部位于美国纽约的Verizon通信公司(VerizonCommunications)周一股价下跌0.17美元,报收于31.46美元,该公司股价今年以来已经下跌7.2%。Verizon无线是Verizon通信公司同英国沃达丰公司的合资企业。
琦基
去年11月27日,琦基发布了全球首款Google Android/Windows Mobile双操作系统的智能手机琦基i6,采用Google Android操作系统的叫做琦基i6 goal,采用Windows Mobile操作系统的叫做琦基i6 Win。
华硕
华硕公司CEO沈振来日前在CES展会上向媒体表示,公司正在考虑推出一款Eee品牌手机,并可能基于Google Android操作系统。
联想
OMS和T-mobile G1搭载的Android(以最初上市版本为主)的不同之处就是可以使用户自行关闭正在运行的程序而不是由系统控制:按住屏幕上方向下拖动即可看到任务管理器。 乐Phone是联想最新推出的一款Android系统手机,将于2010年5月发布。

HKC Pearl
做为目前在市面上唯一正式销售的Windows和Android系统双系统手机,这款HKC Pearl 珍珠珠配备了QVGA屏幕,内存采用了128MB/256MB的标准配置,主处理器采用PXA 310处理器,624Mhz的主频性能非常强劲,而且机器还配备了Wi-Fi,蓝牙2.0无线传输设置。
华为
造型上,U8230在外观上有别于其他Android手机的塑料风格,通体的银灰色和正面功能键盘的发丝纹路都洋溢着商务机型的味道。而作为功能上的特色,U8230拥有一块3.5英寸的大屏幕、高达1500毫安时的锂电池和一枚320万象素摄像头采用Android平台1.5版本。预计将于下半年正式发售。
海尔
海尔H7采用的是Android OS 1.5系统,不过如果H7上市时Android OS已经升级到2.0版的话海尔应该会一步到位选择Android OS 2.0。由于海尔在亚洲电信展上展示的H7只是模型机,因此这款手机与HTC的Android机型相比究竟如何尚不得而知。不过海尔的规格说明书表明,H7将会配备2.8英寸触摸显示屏,内置WiFi、GPS和蓝牙模块,支持FM收音,配备200万象素摄像头,支持闪光灯功能。
华禹
xPhone是由上海禹华通信技术有限公司设计的,采用类iphone的触控设计,配置了3寸WQVGA分辨率的触摸屏,内建300W像素的摄像头,搭载Android平台,采用主频 624Mhz的Marvell PXA-310处理器,拥有128MB SDRAM+256MB ROM的内存配置,支持最大16GB的存储卡扩展,给出的参数中居然还加入了WiFi功能,该机尚未正式发布,我们就静候佳音吧。
宏基Acer A1采用高通8250处理器,最新Android 1.6版本操作系统,512 MB内存,3.5英寸触控屏,可支持GSM和WCDMA双制式,内置GPS,500万像素摄像头,支持micro SD扩展。09年9月底开始在法国和德国接受预定,Acer A1售价为389.99欧元。国外品牌摩托罗拉摩托罗拉 Cliq是全球首款发售的Android操作系统智能手机,采用侧滑盖设计,支持GSM和WCDMA双频,3.1英寸屏幕,320×480像素屏幕分辨率,内置500万摄像头,机身自带256MB内存,支持micro SD扩展。该机最大特色是支持世界上主流社。而最,据悉将在十月上市。
魅族
即将推出的魅族M8 3G版本,使用微软CE与Android双系统。
分别推出TD.WCDMA.CDMA2000版本。
[编辑本段]Android在中国
android在中国的前景十分广阔,首先是有成熟的消费者,在国内,android社区十分红火,这些社区为android在中国的普及做了很好的推广作用。国内厂商和运营商也纷纷加入了android阵营,包括OPPO,中国移动,中国联通,华为通讯,联想等大企业。

‘叁’ android之animator 和animation 的区别

一、 前言
Animator框架是Android 4.0中新添加的一个动画框架,和之前的Animation框架相比,Animator可以进行更多和更精细化的动画控制,而且比之前更简单和更高效。在4.0源码中随处都可以看到Animator的使用。

二、 Animation和Animator比较
如下图,是Animation和Animator两个类继承图的对比。
C:Object C:Object
C:Animation C:Animator
C:AlphaAnimation C:AnimatorSet
C:AnimationSet C:ValueAnimator
C:DummyAnimation C:ObjectAnimator
C:Rotate3dAnimation C:TimeAnbimator
C:RotateAniamtion
C:ScaleAnimation
C:TranslateAnimation

Animation框架定义了透明度,旋转,缩放和位移几种常见的动画,而且控制的是一个整个View动画,实现原理是每次绘制视图时View所在的ViewGroup中的drawChild函数获取该View的Animation的Transformation值,然后调用canvas.concat(transformToApply.getMatrix()),通过矩阵运算完成动画帧,如果动画没有完成,继续调用invalidate()函数,启动下次绘制来驱动动画,动画过程中的帧之间间隙时间是绘制函数所消耗的时间,可能会导致动画消耗比较多的CPU资源。
在Animator框架中使用最多的是AnimatorSet和ObjectAnimator配合,使用ObjectAnimator进行更精细化控制,只控制一个对象的一个属性值,多个ObjectAnimator组合到AnimatorSet形成一个动画。而且ObjectAnimator能够自动驱动,可以调用setFrameDelay(longframeDelay)设置动画帧之间的间隙时间,调整帧率,减少动画过程中频繁绘制界面,而在不影响动画效果的前提下减少CPU资源消耗。

三、 关键接口介绍
1. ObjectAnimator介绍
Animator框架封装得比较完美,对外提供的接口非常简单,创建一个ObjectAnimator只需通过如下图所示的静态工厂类直接返回一个ObjectAnimator对象。传的参数包括一个对象和对象的属性名字,但这个属性必须有get和set函数,内部会通过java反射机制来调用set函数修改对象属性值。还包括属性的初始值,最终值,还可以调用setInterpolator设置曲线函数。

2. AnimatorSet介绍
AnimatorSet主要是组合多个AnimatorSet和ObjectAnimator形成一个动画,并可以控制动画的播放顺序,其中还有个辅助类通过调用play函数获得。

3. AnimatorUpdateListner介绍
通过实现AnimatorUpdateListner,来获得属性值发生变化时的事件,在这个回调中发起重绘屏幕事件。

四、 使用实例
在Android4.0中的ApiDemo中有个BouncingBalls实例,描述了Animator框架的使用,当点击屏幕时,绘制一个球从点击位置掉到屏幕底部,碰到底部时球有压扁的效果,然后回弹到点击位置再消失。
代码如下:
ShapeHolder newBall =addBall(event.getX(), event.getY());

// Bouncing animation with squash and stretch
float startY = newBall.getY();
float endY = getHeight() - 50f;
float h = (float)getHeight();
float eventY = event.getY();
int ration = (int)(500 * ((h - eventY)/h));
ValueAnimator bounceAnim = ObjectAnimator.ofFloat(newBall, "y", startY, endY);
bounceAnim.setDuration(ration);
bounceAnim.setInterpolator(new AccelerateInterpolator());
ValueAnimator squashAnim1 = ObjectAnimator.ofFloat(newBall, "x", newBall.getX(),
newBall.getX() - 25f);
squashAnim1.setDuration(ration/4);
squashAnim1.setRepeatCount(1);
squashAnim1.setRepeatMode(ValueAnimator.REVERSE);
squashAnim1.setInterpolator(new DecelerateInterpolator());
ValueAnimator squashAnim2 = ObjectAnimator.ofFloat(newBall, "width", newBall.getWidth(),
newBall.getWidth() + 50);
squashAnim2.setDuration(ration/4);
squashAnim2.setRepeatCount(1);
squashAnim2.setRepeatMode(ValueAnimator.REVERSE);
squashAnim2.setInterpolator(new DecelerateInterpolator());
ValueAnimator stretchAnim1 = ObjectAnimator.ofFloat(newBall, "y", endY,
endY + 25f);
stretchAnim1.setDuration(ration/4);
stretchAnim1.setRepeatCount(1);
stretchAnim1.setInterpolator(new DecelerateInterpolator());
stretchAnim1.setRepeatMode(ValueAnimator.REVERSE);
ValueAnimator stretchAnim2 = ObjectAnimator.ofFloat(newBall, "height",
newBall.getHeight(),newBall.getHeight() - 25);
stretchAnim2.setDuration(ration/4);
stretchAnim2.setRepeatCount(1);
stretchAnim2.setInterpolator(new DecelerateInterpolator());
stretchAnim2.setRepeatMode(ValueAnimator.REVERSE);
ValueAnimator bounceBackAnim = ObjectAnimator.ofFloat(newBall, "y", endY,
startY);
bounceBackAnim.setDuration(ration);
bounceBackAnim.setInterpolator(newDecelerateInterpolator());
// Sequence the down/squash&stretch/upanimations
AnimatorSet bouncer = new AnimatorSet();
bouncer.play(bounceAnim).before(squashAnim1);
bouncer.play(squashAnim1).with(squashAnim2);
bouncer.play(squashAnim1).with(stretchAnim1);
bouncer.play(squashAnim1).with(stretchAnim2);
bouncer.play(bounceBackAnim).after(stretchAnim2);

// Fading animation - remove the ball when theanimation is done
ValueAnimator fadeAnim = ObjectAnimator.ofFloat(newBall, "alpha", 1f, 0f);
fadeAnim.setDuration(250);
fadeAnim.addListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animatoranimation) {
balls.remove(((ObjectAnimator)animation).getTarget());

}
});
// Sequence the two animations to play oneafter the other
AnimatorSet animatorSet = new AnimatorSet();
animatorSet.play(bouncer).before(fadeAnim);

// Start the animation
animatorSet.start();

‘肆’ 关于 PendingIntent 您需要知道的那些事

PendingIntent 是 Android 框架中非常重要的组成部分,但是目前大多数与该主题相关的开发者资源更关注它的实现细节,即 "PendingIntent 是由系统维护的 token 引用",而忽略了它的用途。

由于 Android 12 对 PendingIntent 进行了 重要更新 ,包括需要显式确定 PendingIntent 是否是可变的,所以我认为有必要和大家深入聊聊 PendingIntent 有什么作用,系统如何使用它,以及为什么您会需要可变类型的 PendingIntent。

PendingIntent 对象封装了 Intent 对象的功能,同时以您应用的名义指定其他应用允许哪些操作的执行,来响应用户未来会进行的操作。比如,所封装的 Intent 可能会在闹铃关闭后或者用户点击通知时被触发。

PendingIntent 的关键点是其他应用在触发 intent 时是 以您应用的名义 。换而言之,其他应用会使用您应用的身份来触发 intent。

为了让 PendingIntent 具备和普通 Intent 一样的功能,系统会使用创建 PendingIntent 时的身份来触发它。在大多数情况下,比如闹铃和通知,其中所用到的身份就是应用本身。

我们来看应用中使用 PendingIntent 的不同方式,以及我们使用这些方式的原因。

使用 PendingIntent 最常规最基础的用法是作为关联某个通知所进行的操作。

可以看到我们构建了一个标准类型的 Intent 来打开我们的应用,然后,在添加到通知之前简单用 PendingIntent 封装了一下。

在本例中,由于我们明确知道未来需要进行的操作,所以我们使用 FLAG_IMMUTABLE 标记构建了无法被修改的 PendingIntent 。

调用 NotificationManagerCompat.notify() 之后工作就完成了。当系统显示通知,且用户点击通知时,会在我们的 PendingIntent 上调用 PendingIntent.send() ,来启动我们的应用。

您也许会认为如果应用需要更新 PendingIntent ,那么它需要是可变类型,但其实并不是。应用所创建的 PendingIntent 可通过 FLAG_UPDATE_CURRENT 标记来更新。

在接下来的内容中我们会解释为什么将 PendingIntent 设置为可变类型。

通常的用法并不局限于与系统交互。虽然在某些操作后使用 startActivityForResult() 和 onActivityResult() 来 接收回调 是非常常见的用法,但它并不是唯一用法。

想象一下一个线上订购应用提供了 API 使其他应用可以集成。当 Intent 启动了订购食物的流程后,应用可以 Intent 的 extra 的方式访问 PendingIntent 。一旦订单完成传递,订购应用仅需启动一次 PendingIntent 。

在本例中,订购应用使用了 PendingIntent 而没有直接发送 activity 结果,因为订单可能需要更长时间进行提交,而让用户在这个过程中等待是不合理的。

我们希望创建一个不可变的 PendingIntent ,因为我们不希望线上订购应用修改我们的 Intent 。当订单生效时,我们仅希望其他应用发送它,并保持它本身不变。

但是如果我们作为订购应用的开发者,希望添加一个特性可以允许用户回送消息至调用订购功能的应用呢?比如可以让调用的应用提示,"现在是披萨时间!"

要实现这样的效果就需要使用可变的 PendingIntent 了。

既然 PendingIntent 本质上是 Intent 的封装,有人可能会想可以通过一个 PendingIntent.getIntent() 方法来获得其中所封装的 Intent 。但是答案是不可以的。那么该如何实现呢?

PendingIntent 中除了不含任何参数的 send() 方法之外,还有其他 send 方法的版本,包括这个可以接受 Intent 作为参数的 版本 :

这里的 Intent 参数并不会替换 PendingIntent 所封装的 Intent ,而是通过 PendingIntent 在创建时所封装的 Intent 来填充参数。

我们来看下面的例子。

这里的 PendingIntent 会被传递到我们的线上订购应用。当传递完成后,应用可以得到一个 customerMessage ,并将其作为 intent 的 extra 回传,如下示例所示:

调用端的应用会在它的 Intent 中得到 EXTRA_CUSTOMER_MESSAGE extra,并显示消息。

⚠️当创建可变的 PendingIntent 时, 始终 显式设置要启动的 Intent 的 component。可以通过我们上面的实现方式操作,即显式设置要接收的准确类名,不过也可以通过 Intent.setComponent() 实现。

您的应用可能会在某些场景下调用 Intent.setPackage() 来实现更方便。但是请特别注意这样的做法有可能会 匹配到多个 component 。如果可以的话,最好指定特定的 component。

⚠️如果您尝试覆写使用 FLAG_IMMUTABLE 创建的 PendingIntent 中的值,那么该操作会 失败且没有任何提示 ,并传递原始封装未修改的 Intent 。

请记住应用总是可以更新自身的 PendingIntent ,即使是不可变类型。使 PendingIntent 成为可变类型的唯一原因是其他应用需要通过某种方式更新其中封装的 Intent 。

我们上面介绍了少数几个可用于创建 PendingIntent 的标记,还有一些标记也为大家介绍一下。

FLAG_IMMUTABLE : 表示其他应用通过 PendingIntent.send() 发送到 PendingIntent 中的 Intent 无法被修改。应用总是可以使用 FLAG_UPDATE_CURRENT 标记来修改它自己的 PendingIntent。

在 Android 12 之前的系统中,不带有该标记创建的 PendingIntent 默认是可变类型。

⚠️ Android 6 (API 23) 之前的系统中, PendingIntent 都是可变类型。

🆕 FLAG_MUTABLE : 表示由 PendingIntent.send() 传入的 intent 内容可以被应用合并到 PendingIntent 中的 Intent。

⚠️ 对于任何可变类型的 PendingIntent, 始终 设置其中所封装的 Intent 的 ComponentName 。如果未采取该操作的话可能会造成安全隐患。

该标记是在 Android 12 版本中加入。Android 12 之前的版本中,任何未指定 FLAG_IMMUTABLE标记所创建的 PendingIntent 都是隐式可变类型。

FLAG_UPDATE_CURRENT : 向系统发起请求,使用新的 extra 数据更新已有的 PendingIntent,而不是保存新的 PendingIntent。如果 PendingIntent 未注册,则进行注册。

FLAG_ONE_SHOT : 仅允许 PendingIntent (通过 PendingIntent.send()) 被发送一次。对于传递 PendingIntent 时,其内部的 Intent 仅能被发送一次的场景就非常重要了。该机制可能便于操作,或者可以避免应用多次执行某项操作。

🔐 使用 FLAG_ONE_SHOT 来避免类似 " 重放攻击 " 的问题。

FLAG_CANCEL_CURRENT : 在注册新的 PendingIntent 之前,取消已存在的某个 PendingIntent 。该标记用于当某个 PendingIntent 被发送到某应用,然后您希望将它转发到另一个应用,并更新其中的数据。使用 FLAG_CANCEL_CURRENT 之后,之前的应用将无法再调用 send 方法,而之后的应用可以调用。

有些情况下系统或者其他框架会将 PendingIntent 作为 API 调用的返回值。举一个典型例子是方法 MediaStore.createWriteRequest() ,它是在 Android 11 中新增的。

正如我们应用创建的 PendingIntent 一样,它是以我们应用的身份运行,而系统创建的 PendingIntent ,它是以系统的身份运行。具体到这里 API 的使用场景,它允许应用打开 Activity 并赋予我们的应用 Uri 集合的写权限。

我们在本文中介绍了 PendingIntent 如何作为 Intent 的封装使系统或者其他应用能够在未来某一时间以某个应用的身份启动该应用所创建的 Intent。

我们还介绍了 PendingIntent 为何需要设置为不可变,以及这么做并不会影响应用修改自身所创建的 PendingIntent 对象。可以通过 FLAG_UPDATE_CURRENT 标记加上 FLAG_IMMUTABLE 来实现该操作。

我们还介绍了如果 PendingIntent 是可变的,需要做的预防措施 — 保证对封装的 Intent 设置 ComponentName 。

最后,我们介绍了有时系统或者框架如何向应用提供 PendingIntent ,以便我们能够决定如何并且何时运行它们。

Android 12 中提升了应用的安全性,PendingIntent 的这些更新与之相得益彰。更多内容请查阅我们之前的推文《 Android 12 首个开发者预览版到来 》。

如需了解更多,欢迎 使用 Android 12 开发者预览版 测试您的应用,并 告诉我们 您的使用体验。

‘伍’ Android模块化设计方案之使用代理模式解耦

Android模块化设计方案系列文章:

1、 Android模块化设计方案模型图

2、 Android模块化设计方案之接口API化

3、 Android模块化设计方案之使用代理模式解耦

本篇是Android模块化设计方案的第三篇,也是对 第一篇 中ThridLibs Proxy模块进行说明。

很多人觉得对那些优秀的第三方依赖库再次封装是一件多余的事情,因为这些库可能出自大神/大厂,或有非常高的star并且使用起来十分稳定,可以在项目中直接拿来使用。当然每个开发者都有自己的态度,我也只是根据以往的经验,表达一下自己的看法。

作为从了解四大组件就不愁找不到工作的互联网大时代中一路走来的Android老鸟,经历了网路请求框架从HttpConnection到Volley再到OkHttp,也经历了图片加载框架从UniversalImageLoader到Picasso再到Gilde,技术的迭代随时都会发生。让项目架构具有良好的扩展性是在设计之初就需要考虑的东西。

那么接下来我用一个简单的demo来演示一下如何使用代理模式对第三方框架进行解耦。

现在我们有一个名为 thirdlib 的模块,为我们提供图片加载功能。

第一步:我们创建了一个新的模块 thridlibproxy ,并且该模块依赖于 thirdlib ,我们在该模块中创建包私有的接口ImageLoaderInterface,这个接口中把thirdlib模块中提供的功能抽象为接口:

第二步:创建包私有的接口的实现类ImageLoaderOneImpl,类中图片加载的业务逻辑是通过调用 thirdlib 中的ImageLoader类实现的:

第三步:我们提供一个供外部调用的ImageLoaderOneImpl接口代理类ImageLoaderProxy:

最后我们就可以通过ImageLoaderProxy中提供的loadImage方法进行图片的加载了。

看到这里有些盆友就会问了,在第二步的时候,我们就完成了 thirdlib 的封装工作,为什么还要有第三步?还有我写一个单例类直接对 thirdlib 进行封装不就行了,为什么还要抽象出接口?

原因很简单,为的就是尽可能的满足软件设计七大原则中的第一个: 开闭原则

一个好的软件设计,需要对拓展开放,对修改关闭。我们在设计之初就要想到,在更换图片加载框架之后如何最大程度上满足开闭原则。

如果直接对 thirdlib 进行封装,是面向类的开发而不是面向接口。如果此时更换图片加载类库,那必然会对封装出来的类进行大量的修改,把原来的实现替换为新的实现。

使用代理模式的好处就是,我新创建一个被代理的类ImageLoaderTwoImpl:

然后只需要对第三步中的被代理类进行替换就行了。

在想要达到相同效果的时候,最大程度的满足了开闭原则。

我们业务层模块也和第三方库实现了完全的解耦,我不需要知道 thridlibproxy 是如何帮我完成图片加载工作的,但是只要调用它提供的方法就完事儿的,这也符合软件设计七大原则中的: 最少知道原则
关于为何以及怎么通过代理调用第三方依赖库,到这里就介绍完毕了,赶快动手试试吧~

我只想说: 原则是死的,人是活的😹

如果觉得有收获的话,欢迎点赞评论以及关注~

‘陆’ Android有多强大

Android 用甜点作为它们系统版本的代号的命名方法开始于 Andoird 1.5 发布的时候。作为每个版本代表的甜点的尺寸越变越大,然后按照26个字母数序:纸杯蛋糕,甜甜圈,松饼,冻酸奶,姜饼,蜂巢。
Android 1.1
发布时间:发布于 2008 年9月
Android 1.5
Cupcake纸杯蛋糕 发布时间:发布于 2009 年 4 月
Android 1.6
Donut甜甜圈 发布时间:2009 年 9 月
Android 2.0
Eclair松饼 发布时间:2009 年 10 月 26 日
Android 2.1
Eclair松饼 发布时间: 2009 年 10 月 26 日 Android 2.1主要特性:提升硬件速度 更多屏幕以及分辨率选择 大幅度的用户界面改良支持 Exchange活动墙纸 大幅改进虚拟键盘 蓝牙 2.1 Google 地图
Android 2.2
Froyo冻酸奶 谷歌于北京时间2010年5月20日晚上10:30点在旧金山Moscone会展中心举办Google I/O 2010大会第二天的会议,Google正式发布了代号是“froyo 冻酸奶”的Android操作系统2.2版。 相对于上一版本的 改变: 1、整体性能大幅度的提升 2、3G网络共享功能。 3、Flash的支持。 4、App2sd功能。 5、全新的软件商店。 6、更多的Web应用API接口的开发。
Android 2.2 For x86
在几位华人软件工程师的努力下,中国的用户已经可以享受到真正在上网本上可以安装使用的Android了,这就是孙翊、黄志伟和Corentin Chary和其他几位活跃的开发人员正在参与的Android-x86开源项目。此外,还有其他的开发人员如Kelly2.Blue、Wu Hai Gang、Swand ke 和 Wallace1 wang,他们都是来自中国大陆和台湾的华人软件工程师。 在孙翊发来的最新版本更新说明中,明确表示:他们已经解决了众多的技术难题,包括中文拼音输入法的bug修订,蓝牙支持,无线网卡支持、SSL的bug修订等,甚至已经可以直接安装到上网本上,从硬盘启动。
Android2.3
Gingerbread姜饼 北京时间2010年12月7日凌晨,Google正式对外发布了他们的下一代智能手机操作系统Android 2.3也就被大家所熟知的Android Gingerbread系统。 主要更新包括: 游戏:增加了新的垃圾回收和优化处理事件,以提高对游戏的支持能力。原生代码可直接存取输入和感应器事件、EGL/OpenGL ES、OpenSL ES。新的管理窗口和生命周期的框架。 多媒体:支持VP8和WebM视频格式,提供AAC和AMR宽频编码,提供了新的音频效果器,比如混响、均衡、虚拟耳机和低频提升 通讯方式:支持前置摄像头、SIP/VOIP和NFC(近场通讯) 站在用户的角度看,这次更新的亮点主要有: 简化界面、速度提升: 更快更直观的文字输入: 一键文字选择和复制/粘帖: 改进的电源管理系统: 新的应用管理方式: 原生支持前置摄像头、互联网通话和NFC(近场通讯): 系统原生支持VoIP,可以在联系人里加入它的SIP帐户,然后直接通过系统来拨打VoIP电话。 增加下载管理器:
Android 2.4
Ice cream sandwich冰激凌三明治 预计在2011年第四季度发布。其甜品代号为 Ice cream sandwich(冰激凌三明治) 目前已知的Android 2.4带来的更新包括更多的动画特效、更快的运行速度、软件通话降噪、视频聊天等。
Android N.n
有可靠的消息人士表示,继“冰激凌三明治”之后,下一版Android系统的代号将为“Jelly Bean”。
Android3.0
Honeycomb(蜂巢) 3.0系统特性 ·优化针对平板 ·全新设计的UI增强网页浏览功能 ·n-app purchases功能
Android3.1
Honeycomb 蜂巢(改进3.0BUG) ·经过优化的Gmail电子邮箱; ·全面支持GoogleMaps Android 3.1Honeycomb(3.0改进) 将Android手机系统跟平板系统再次合并,从而方便开发者。 任务管理器可以滚动,支持USB 输入设备(键盘、鼠标等)。 支持 Google TV.可以支持XBOX 360无线手柄 widget支持的变化,能更加容易的定制屏幕widget插件。
Android 3.2
Honeycomb(蜂巢) 2011年7月13日,谷歌公司放出了新版“蜂巢”Android 3.2的升级源码,合作厂商摩托罗拉亦在当日发布了针对旗下XOOM平板电脑的升级固件,为用户更新新版系统。 Android 3.2这一新版平板电脑操作系统开始支持7英寸设备,并引入了应用显示缩放功能,可以让那些针对手机开发的应用,更平滑的显示在平板电脑上。
编辑本段系统优势
开放性 在优势方面,Android平台首先就是其开放性,开放的平台允许任何移动终端厂商加入到Android联盟中来。显着的开放性可以使其拥有更多的开发者,随着用户和应用的日益丰富,一个崭新的平台也将很快走向成熟。 挣脱束缚 在过去很长的一段时间,特别是在欧美地区,手机应用往往受到运营商制约,使用什么功能接入什么网络,几乎都受到运营商的控制。自从iPhone上市,用户可以更加方便地连接网络,运营商的制约减少。随着EDGE、HSDPA这些2G至3G移动网络的逐步过渡和提升,手机随意接入网络已不是运营商口中的笑谈。 丰富的硬件 这一点还是与Android平台的开放性相关,由于Android的开放性,众多的厂商会推出千奇百怪,功能特色各具的多种产品。 开发商 Android平台提供给第三方开发商一个十分宽泛、自由的环境。因此不会受到各种条条框框的阻挠,可想而知,会有多少新颖别致的软件会诞生。但也有其两面性,血腥、暴力、情色方面的程序和游戏如何控制正是留给Android难题之一。 Google应用 从搜索巨人到全面的互联网渗透,Google服务如地图、邮件、搜索等已经成为连接用户和互联网的重要纽带,而Android平台手机将无缝结合这些优秀的Google服务。
编辑本段系统缺陷
一、Android系统手机泄密 二、拨号后自动挂断电话 通话BUG频繁出现 三、对硬件配置要求高 制造成本增加 四、系统费电严重 安卓手机续航不足 五、系统计算器计算有偏差 例如在Android系统自带的计算器内输入14.52-14.49,正确结果应该是0.03,但是计算器结果显示的数字为0.0299999。
编辑本段研发联盟
开放手机联盟
为了推广Android,Google和几十个手机相关企业建立了开放手机联盟(Open Handset Alliance)。 联盟成员包括摩托罗拉(Motorola)、HTC、SAMSUNG、LG、Intel、NVIDIA、SiRF、Skype、KUPA Map 、MTK 以及中国移动在内的34家技术和无线应用的领军企业。这34家企业中并不包含把持Symbian的Nokia公司,以及凭借着iPhone风光正在的Apple公司,微软没有加入,加拿大RIM和它的Blackberry也被挡在门外。 手机开放联盟大家庭成员名单: 终端制造商 Motorola(摩托罗拉)- 美国(美国最大的手机制造商,着名老牌IT公司) Sony Ericsson(索尼爱立信)- 英国(索尼和爱立信的合资公司) HTC(宏达国际电子股份有限公司)-中国台湾 Samsung Electronics(三星电子)- 韩国 LG Electronics(LG电子)- 韩国 Lumigon (丹麦陆力更手机公司)- 丹麦 ARCHOS(爱可视)- 法国 TOSHIBA(东芝)- 日本 安卓
SHARP(夏普)-日本 Fujitsu(富士通)-日本 NEC(日本电気株式会社)-日本 魅族 - 中国 小米--中国 移动运营商 China Telecom(中国电信)- 中国 China Mobile(中国移动)- 中国 China Unicom(中国联通)- 中国 SK Telecom - 韩国 KT - 韩国 LG U - 韩国 KDDI by AU - 日本 Softbank -日本 NTT DoCoMo(日本电信电话公司)- 日本 Sprint Nextel(美国斯普林特Nextel公司)- 美国 Telecom Italia(意大利电信)- 意大利 Telefónica - 西班牙 T-Mobile - 德国 半导体公司 ARM- 英国 Texas Instruments(德州仪器)- 美国 Qualcomm(高通)- 美国 NVIDIA(英伟达)- 美国 MediaTek(联发科)- 中国台湾 ST(意法半导体)- 欧洲 Infineon(英飞凌科技)- 德国 ST-Ericsson(ST爱立信)- 欧洲 Audience (听众)- 美国 Broadcom (博通)- 美国 Intel(英特尔)- 美国 Marvell (俊茂微电子)- 美国 SiRF(瑟夫)- 美国 Synaptics(新思)- 美国 HP(惠普)- 美国 软件公司 Aplix - 日本 Ascender - 美国 Skype(微软)- 美国 Esmertec(微迅)- 瑞士 Living Image - 美国 NMS Communications - 加拿大 Noser Engineering AG - 德国 Nuance Communication - 美国 PacketVideo - 美国 SkyPop - 美国 Sonix Network - 美国 The Astonishing Tribe - 瑞典 Wind River Systems(风河)- 美国
编辑本段使用品牌
大事记
2008年9月22日,美国运营商德国T-Mobile在纽约正式发布第一款Android手机——T-Mobile G1。该款手机为台湾宏达电子(HTC)代工制造,是世界上第一部使用Android操作系统的手机,支持WCDMA/HSPA网络,理论下载速率7.2Mbps,并支持Wi-Fi。 2009年10月28日正式发布了Android 2.0 智能手机操作系统。 2010年1月索尼爱立信首款Android机型X10上市 。 2010年1月7日,Google在其美国总部正式向外界发布了旗下首款合作品牌手机Nexus One(HTC G5),并同时开始对外发售。 2010年7月9日,美国NDP集团调查显示,Android系统已占据了美国移动系统市场28%的份额。 北京时间2011年3月25日,据国外媒体报道,谷歌周四表示,谷歌暂停开源Android3.0,并将暂时阻止小型手机生产商使用其Android 3.0“Honeycomb”系统,期限未定。 谷歌一位发言人通过电子邮件声明称,Honeycomb是专为平板电脑而非手机设计的,在该系统以开源形式发布前,还有很多工作要做。谷歌向《商业周刊》表示,推迟发布可能达数月之久。
国内品牌

HTC 安卓手机(5张)魅族 魅族M9为一款多点触摸手机,于2010年12月16日发布,2011年1月1日正式上市。 J.wong在论坛发帖确定魅族M9将不能刷原生的Android系统,M9将不是简简单单的在Android系统上加个UI,而是深层定制安卓系统,现有的Android软件的兼容性也绝对不是问题。J.wong甚至表态想刷Android系统的安卓控们请远离M9。J.wong表示魅族M9的系统虽然内核采用Android内核,但从UI和用户体验方面完全看不出任何安卓的影子,使用Android内核只是为了能兼容数以十万计的安卓软件,增强魅族M9的软件扩展性,让M8之前一直被诟病的软件数量成为历史。 天语 天语W700是K-Touch天语手机在2011年初推出的一款WCDMA制式3G Android智能手机,同时,它还是第一款国产双核手机。这款采用了NVIDIA TEGRA2平台的高端智能手机首次发布在位于拉斯维加斯的CES2011展会上亮相。 天语W700采用基于ARM Cortex-A9 Dual Core的Tegra2 AP20H处理器,主频为1GHz,具有高性能低功耗的特点,它集成了高清视频处理器、图像处理器、音频处理器等众多模块的高度整合处理器。 联想 OMS和T-mobile G1搭载的Android(以最初上市版本为主)的不同之处就是可以使用户自行关闭正在运行的程序而不是由系统控制:按住屏幕上方向下拖动即可看到任务管理器。 HKC Pearl 做为目前在市面上唯一正式销售的Windows和Android系统双系统手机,这款HKC Pearl 珍珠珠配备了QVGA屏幕,内存采用了128MB/256MB的标准配置,主处理器采用PXA 310处理器,624Mhz的主频性能非常强劲,而且机器还配备了Wi-Fi,蓝牙2.0无线传输设置。 华为 华为U8230在外观上有别于其他Android手机的塑料风格,通体的银灰色和正面功能键盘的发丝纹路都洋溢着商务机型的味道。而作为功能上的特色,U8230拥有一块3.5英寸的大屏幕、高达1500毫安时的锂电池和一枚320万象素摄像头采用Android平台1.5版本。 中兴 中兴最近也大力发展android手机,推出了v880。 海尔 海尔的产品也青睐搭载android系统。海尔于09年上市的H7采用直板全触屏设计,操作系统上正是采用了最新的Google Android2.0操作系统。 海尔于2011年7月亮相青岛国际消费电子博览会的haipad,搭载创新工场家族“点心os”首款为PAD定制的“点心—互联网智能手持终端解决方案”。 华禹 xPhone是由上海禹华通信技术有限公司设计的,采用类iphone的触控设计,配置了3寸WQVGA分辨率的触摸屏,内建300W像素的摄像头,搭载Android平台,采用主频 624Mhz的Marvell PXA-310处理器,拥有128MB SDRAM+256MB ROM的内存配置,支持最大16GB的存储卡扩展,给出的参数中还加入了WiFi功能。 琦基 去年11月27日,琦基发布了全球首款Google Android/Windows Mobile双操作系统的智能手机琦基i6,采用Google Android操作系统的叫做琦基i6 goal,采用Windows Mobile操作系统的叫做琦基i6 Win。 蓝魔 蓝魔的V系列MP4以及平板电脑采用安卓系统。 酷派 推出D539等多款搭载Android平台的3G商务机型 小米 小米手机是小米公司(全称北京小米科技有限责任公司)研发的一款高性能发烧级智能手机。手机预计2011年8月发布,售价1999元,主要针对手机发烧友,采用线上销售模式。小米手机使用了高通Snapdragon S3 MSM8260手机处理器,也是世界上首款双核1.5GHz的智能手机。
国外品牌
三星、LG、摩托罗拉、夏普、索尼爱立信
编辑本段系统架构
应用程序
Android以Java为编程语言,从接口到功能,都有层出不穷的变化,其中Activity等同于J2ME的MIDlet,一个 Activity 类(class)负责创建视窗(window),一个活动中的Activity就是在 foreground(前景)模式,背景运行的程序叫做Service。两者之间通过由ServiceConnection和AIDL连结,达到复数程序同时运行的效果。如果运行中的 Activity 全部画面被其他 Activity 取代时,该 Activity 便被停止(stopped),甚至被系统清除(kill)。 View等同于J2ME的Displayable,程序人员可以通过 View 类与“XML layout”档将UI放置在视窗上,Android 1.5的版本可以利用 View 打造出所谓的 Widgets,其实Widget只是View的一种,所以可以使用xml来设计layout,HTC的Android Hero手机即含有大量的widget。至于ViewGroup 是各种layout 的基础抽象类(abstract class),ViewGroup之内还可以有ViewGroup。View的构造函数不需要再Activity中调用,但是Displayable的是必须的,在Activity 中,要通过findViewById()来从XML 中取得View,Android的View类的显示很大程度上是从XML中读取的。View 与事件(event)息息相关,两者之间通过Listener 结合在一起,每一个View都可以注册一个event listener,例如:当View要处理用户触碰(touch)的事件时,就要向Android框架注册View.OnClickListener。另外还有Image等同于J2ME的BitMap。
中介软件
操作系统与应用程序的沟通桥梁,应用分为两层:函数层(Library)和虚拟机(Virtual Machine)。 Bionic是 Android 改良libc的版本。Android 同时包含了Webkit,所谓的Webkit 就是Apple Safari 浏览器背后的引擎。Surface flinger 是就2D或3D的内容显示到屏幕上。Android使用工具链(Toolchain)为Google自制的Bionic Libc。 Android采用OpenCORE作为基础多媒体框架。OpenCORE可分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 的 HAL(硬件抽像层)是能以封闭源码形式提供硬件驱动模块。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 只要说明“类型”,即 mole ID,就可以取得操作函数。
编程语言
Android 是运行于 Linux kernel之上,但并不是GNU/Linux。因为在一般GNU/Linux 里支持的功能,Android 大都没有支持,包括Cairo、X11、Alsa、FFmpeg、GTK、Pango及Glibc等都被移除掉了。Android又以bionic 取代Glibc、以Skia 取代Cairo、再以opencore 取代FFmpeg 等等。Android 为了达到商业应用,必须移除被GNU GPL授权证所约束的部份,例如Android将驱动程序移到 userspace,使得Linux driver 与 Linux kernel彻底分开。bionic/libc/kernel/ 并非标准的kernel header files。Android 的 kernel header 是利用工具由 Linux kernel header 所产生的,这样做是为了保留常数、数据结构与宏。 目前Android 的 Linux kernel控制包括安全(Security),存储器管理(Memory Management),程序管理(Process Management),网络堆栈(Network Stack),驱动程序模型(Driver Model)等。下载Android源码之前,先要安装其构建工具 Repo来初始化源码。Repo 是 Android 用来辅助Git工作的一个工具。
安全与权限
Android本身是一个权限分立的操作系统。在这类操作系统中,每个应用都以唯一的一个系统识别身份运行(Linux用户ID与群组ID)。系统的各部分也分别使用各自独立的识别方式。Linux就是这样将应用与应用,应用与系统隔离开。 系统更多的安全功能通过权限机制提供。权限可以限制某个特定进程的特定操作,也可以限制每个URI权限对特定数据段的访问。 Android安全架构的核心设计思想是,在默认设置下,所有应用都没有权限对其他应用、系统或用户进行较大影响的操作。这其中包括读写用户隐私数据(联系人或电子邮件),读写其他应用文件,访问网络或阻止设备待机等。 安装应用时,在检查程序签名提及的权限,且经过用户确认后,软件包安装器会给予应用权限。从用户角度看,一款Android应用通常会要求如下的权限: 拨打电话、发送短信或彩信、修改/删除SD卡上的内容、读取联系人信息、读取日程信息,写入日程数据、读取电话状态或识别码、精确的(基于GPS)地理位置、模糊的(基于网络获取)地理位置、创建蓝牙连接、对互联网的完全访问、查看网络状态,查看WiFi状态、避免手机待机、修改系统全局设置、读取同步设定、开机自启动、重启其他应用、终止运行中的应用、设定偏好应用、震动控制、拍摄图片等。 一款应用应该根据自身提供的功能,要求合理的权限。用户也可以分析一款应用所需权限,从而简单判定这款应用是否安全。如一款应用是不带广告的单机版,也没有任何附加内容需要下载,那么它要求访问网络的权限就比较可疑。

‘柒’ android 能不能用 spring

android 一般不能用spring。
Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其着作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。
Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。Spring的核心是控制反转(IoC)和面向切面(AOP)。简单来说,Spring是一个分层的JavaSE/EEfull-stack(一站式) 轻量级开源框架。

‘捌’ 升级Android P更容易 新功能可间接改善数位沈迷行为

AndroidP正式版已经释出,基本上从上一版AndroidO(8.0)升级上来并不困难,但仍要看相关OEM厂商的进度。

针对稍早宣布释出的Android9.0Pie(以下仍以AndroidP为称),负责Android作业系统框架(Framework)、系统健康(SystemHealth)、衡量指标(Metritcs)的Android产品经理BenjaminPoiesz针对此次更新重点进行说明。

对于此次AndroidP所搭载使用行为学习设计,BenjaminPoiesz表示主要还是基于装置本身上的学习,因此现阶段并不会透过云端同步方式,让每一款使用者持有装置都能同样“了解”其操作行为,最主要还是以当下使用装置操作情况进行学习。

至于相比上一版AndrloidO的电力控制表现,其实还是因为不同硬体设备差异,很难明确说明实际节省电力表现,但单就CPU电力损耗来看,整体电力损耗约可降低一半左右,主要在于系统可针对特定App使用情况调整CPU最佳执行效率,借此减少不必要的效能输出导致电力浪费,同时也不会影响App原本执行效能。

而在伴随AndroidP释出的AndroidGo版本,BenjaminPoiesz则说明同样会保留电力效率提升与基础操作行为学习机制,借此让AndroidGo平台使用者维持轻巧操作体验,同时保留AndroidP主要使用特性。

另外,对于从AndroidO(Android8.0)开始导入的ProjectTreble框架设计,在AndroidP释出之后是否代表将能顺利改善绝大部分的版本分散(碎片化)问题,BenjaminPoiesz的看法则认为或许可以,最主要还是要看OEM厂商在产品所采用Abndroid版本而定,但基本上从AndroidO升级到AndroidP应该不会有太大问题,只是可能还是要看OEM厂商本身客制化接口、电信业者针对不同装置调整脚步。

目前虽然搭载AndroidO的装置已经越来越多,但仍有不少比例仍维持在更早之前版本,因此现阶段Google想要改善Android作业系统版本碎片化问题,似乎还是需要一点时间。

Android产品经理BenjaminPoiesz

期望借由Dashboard间接降低数位沉迷现象

针对此次AndroidP额外加入可让使用者衡量自己使用手机时间等数据的Dashboard功能,BenjaminPoiesz表示最主要希望能让使用者更容易知晓个人使用手机情况,例如更容易判断哪些App造成手机电池异常耗电,或是占用太多网路频宽,甚至可以进一步评估自己是否有数位成瘾现象,借此间接地改善使用行为,同时也能呼应目前业界持续推动数位福祉(digitalwell-being)作为。

至于在Dashboard功能所统计数据,其实也会透过API串接方式提供给第三方开发者使用,借此打造不同应用服务,但数据内容将会以公开数据、不具名资料等适合公开使用项目为主,因此并不会因此涉及侵害隐私权等问题。

部分功能依然要与第三方开发者配合

根据BenjaminPoiesz的说明,虽然此次释出的AndroidP已经是正式版本,但部分功能如Slices应用速览依然要等到今年秋季才会开放使用,最主要还是会等第三方开发者提供内容加入整合,因此诸如AppActions目前所支援App内容依然有限,预期要等到今年秋季之后才有更多App加入整合,如此才会让AndroidP变得更好用。

至于像AndroidO加入与Sony合作的LDAC蓝牙播放技术,未来像是华为近期提出的GPUTurbo技术会不会同样考虑加入成为Android标准功能,目前其实还无法确认是否会往此方向发展。

而针对AndroidP原生加入支援“浏海”造型萤幕设计,BenjaminPoiesz除了重申目前规范最多允许在萤幕上、下侧导入两组“浏海”设计,同时也表示不会特别让使用者选择是否手动调整“浏海”显示模式,这部份依然由合作伙伴针对硬体设计自行调整。

类似情况也包含现行越来越多机种加入的人脸识别等新功能,未来也会采取由合作伙伴提供支援运作技术,借此发挥更具弹性的装置设计发展,但Google并不会特别将此类设计逐一加入Android作业系统成为原生支援标准,此部份应该也是基于避免让Android作业系统过于肥大的考量。

目前仅先开放Pixel系列机种升级

稍早释出的AndroidP将先开放Pixel系列机种升级,预计今年秋季才会让包含SonyMobileXZ2、小米MIX2S、HMDGlobalNokia7plus、OPPOR15Pro、vivoX21UD、vivoX21、OnePlus6、EssentialPhone在内机种,以及基于AndroidOne计画打造手机获得更新,而Google计画在今年底之前与合作伙伴一同让更多手机产品升级至AndroidP。

至于防堵沉迷功能仅先以beta形式开放Pixel系列手机测试,预计在今年秋季释出正式版本,而AndroidOne与其他对应AndroidP更新机种,则要等到今年底才能使用此项功能。

阅读全文

与androidone框架相关的资料

热点内容
企业邮箱登录收件服务器地址 浏览:558
计算机思维与算法设计的重要性 浏览:664
linux刷新磁盘命令 浏览:76
我的世界如何查看服务器种子pc 浏览:284
linuxlamp编译安装 浏览:609
枚举算法ppt 浏览:184
cmd查看进程命令 浏览:956
手机内怎么删除APP 浏览:834
鱼群和鸟群算法区别 浏览:93
pdf尺寸设置 浏览:211
android访问本地服务器 浏览:512
程序员相亲被删除微信 浏览:790
centos命令窗口 浏览:596
编译器有几个好用的 浏览:500
数据库和网站如何搭载服务器 浏览:154
网络流理论算法与应用 浏览:795
java和matlab 浏览:388
钉钉苹果怎么下app软件 浏览:832
php网站验证码不显示 浏览:859
铝膜构造柱要设置加密区吗 浏览:344