置顶

android开源定位,android原生定位

作者:hacker | 分类:网络攻防 | 浏览:108 | 日期:2022年10月26日

目录:

iOS 的封闭性体现在哪里?安卓的开放性又体现在哪里?他们各自的优势和劣势是什么?

作者:陈云浩

链接:

来源:知乎

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

IOS:封闭,这样苹果可以做到端到端的控制,控制自己的产品和运行在上面的软件,具有统一的用户体验或者质量上有保证。其实这是Jobs对完全开放做的妥协,其实apple本身就不主张开发。这种受控制的开放或者说是封闭,更大的受益者就是apple,对于用户的益处就是apple一直强大良性循环,只要apple还有创新还在前进,用户就能得到一如既往好的用户体验。其次,其实是副作用,给个人开发者一个有规则的生态环境,所以可以帮一些个人开发者一夜暴富的机会或者少量但稳定的商业机会。

劣势:不能把生态环境扩展到整个手机行业,一家指定规则,对用户来说选择性就小,比如flash就没有生存的余地,对于一些先进的技术不能够吸纳,因为商业的原因。如果apple出现问题,没有其他公司或者合作者来支持其发展,对于iOS的发展只能寄希望于apple的团队足够强大,未免让人担心。

但是,至今为止apple还没有出现以上劣势中出现的情况,可见其发展是势不可挡。

Android:开放,Google把Android定位于开源软件,大部分代码以Apache和BSD版本协议发布,在可以下载到最新代码。

Android优势:Android的优势体现在对于厂商方面,厂商可以拿到代码随意定制,厂商可以在Android framework中加入一些自己的特别的功能,同时还能按照BSD或者Apache协议不开源,这样更大的程度保护了厂商的利益,所以说Android的开源只是google对厂商的,而不是厂商对终端用户的。尤其在HAL层的处理上,google更是绕过了linux kernel中GPL协议,把驱动写在HAL层,HAL层大部分都是BSD Apache协议,同时也可以闭源。所以,把linux让厂商最头疼的版权问题顺利绕过。而且系统还是免费获取,对于厂商来说价格优势很明显,可定制性比其他任何系统都强。

对于终端用户,集成了google的强大服务系统,如map,gtalk,gmail等让终端用户能够用上最方便的操作系统。最重要 Android market上应用免费,破解相对容易,终端用户来说更加喜欢更加便宜。

劣势:

google对开发者和生态系统的维护太差,开发者鲜有在Android Market上赚到钱的,所以Android上的应用基本素质和创新度,发布时间都要比iOS差,造成了部分高端用户还是选择iOS。Android系统版本和终端类型极其混乱和复杂,对开发者来说也是有难度的。这样开发者很难集中精力在软件的创意和微调上,所以Android程序比iOS程序粗制滥造,这是其中的一个原因。

Android用JAVA作为程序语言,有自己优化了虚拟机 dalvik。本意是招揽更多的java程序员,因为java程序员比较多,但是java语言的特性决定了Android是好硬件大户,所以即使Android硬件很强大,但是也没有iOS流畅。

Android上没有标准,因为太开放了,各个厂商定制界面,同时发布自己sdk就是一个例子,大家都想一家独大,都想成为标准,内讧这种事情还是有的,所以这也是不利因素。

最后,个人觉得在5年内iOS在手持类设备上还是更好的操作系统,Android在手机行业会在基本饱和之后,被WP7或者别的OS蚕食掉一些,但是是还有数量上的绝对领先。Android最适合的地方是数字家庭或者是各种非手持电子设备,在这个方向Android将会大放异彩。

安卓系统是开源的,开源是啥意思?

简单的来说 android开源定位,比如谷歌开发了安卓系统最基础的框架了,华为等手机厂家可以利用其源代码开发修改升级匹配自身的系统,但是因为基础源代码来自于安卓(所以android开源定位我们的手机开机时一般都会体现 POWERED BY Android )。而且开发者对于源代码的任何改进都必须要告知开源软件的公司,这样也有利于开源的公司进一步提高源代码。在这方面华为为安卓的发展壮大做出了巨大的贡献。

早期的时候可能困难,但是以现在华为的技术水平来说,开发一个手机操作系统根本不难,但是为什么一直不推出自己的系统呢android开源定位?这是因为系统容易,生态难。

每一种操作系统都有它的运行环境,所有你在下载APP的时候,不同的操作系统是要下载不同的APP的。一个新的操作系统进来,没有你那个系统的APP,那么根本没人会使用你的手机,因为它等于以前的老人机。

举个例子 :比如华为开发了一个系统(据传是鸿蒙),但是微信、支付宝、百度等等这些企业都不开发适用于鸿蒙系统的APP软件,那么鸿蒙系统将会面临的无软件可下载的情况,这时候,这个系统等于废弃的一个系统。之前微软在意识到的手机操作系统的重要性之后,也推出了Windows Phone,不过最终也败下阵来了,因为没有匹配的app可以下载,所以安卓并不是强大,只是它抢占了先机而已。

PS: 很多人会说那苹果属于闭源系统,这些软件开发公司是怎么开发APP的。简单的来说app应用是需要调取系统的权限完成一些特定的工作,系统闭源可以简单理解成禁止其他开发者获取系统的代码,但是应用需要获取的权限是可以赋予的,还有编写应用的代码也是开放的,ios虽然不让你看源码,但它也提供了sdk用来调用系统资源,也提供了api接口来和系统通信调度,所以微信支付宝这些公司可以开发适用于ios的app。

华为更好的解决办法是直接开发出可以兼容安卓APP的系统,那么关于系统的问题就全部迎然而解了,华为的回应中也说明有能力继续发展和使用安卓生态,所以大概率预计新系统是可以兼容的。

假设华为的系统无法兼容安卓的app,那么需要目前所有开发APP的各家企业支持,重新开发适用于华为系统的app应用,这个难度就有点大了,国内或许还好,国际就比较困难了,毕竟别人没有义务做这件事。

一个操作系统就像一个生态圈,一旦这个生态圈稳定,其它的系统就很难进得来,电脑等其它操作系统也是如此,所以华为的困难不在与开发操作系统,而在于其生态圈的架构,最简单的方式就是直接兼容安卓app。

开源从字面上的理解就是开放源头,使用者可以在源代码的基础上进行修改和补充,形成具有特点的定制功能,很多人认为开源就是免费的,它只是对外界开放,但必须要符合原始开发公司的要求。

其中更具代表性的开源系统就是Linux,各种应用不断完善更新都离不开它。更大的特点是开放源代码可以自由定制,由于用户的技术水平有限,很多的硬件和软件厂商并没有提供开源的功能,这就要靠使用者在选择操作系统时根据自己的技术水平来选择,这也说明了很少人用开源操作系统的原因。而对于专业的开发人员来说,开源系统有很大的优势,开发应用可以随心所欲也没那么复杂,因为是开放的源代码,可以根据自己特定的需求进行修改,这对于互联网开发人员来说,是非常重要的帮助。

像Android的系统就是开源的,基于Linux程序开发的一个Java虚拟器,然后在这个设备里运行Java。很多手机厂商在原生Android系统里添加一些定制的功能,形成独有的系统特色,这些操作也不用谷歌授权。但有个前提,只能修改一些普通的代码,重要的核心部分不能修改。

系统开源给了大家很多的便利,用户也在不断增长,对于开源的部分也是会受到一定的限制,谷歌公司可以给你空间去创新,但核心技术还是在别人手里,只有开拓局面,掌握核心技术开发自己的操作系统才是王道。

开源,顾名思义,就是开源源代码,但是使用者需要遵守开源规则。

安卓开源,就是说所有的厂商或者开发者都可以直接使用安卓的源代码去开发,但是需要遵守谷歌的使用条件。

比如说,

全球所有厂商必须预装Google全家桶(中国内地,朝鲜除外,因为谷歌已经退出该市场,服务不可用)。

而对于国内的安卓在开机时都会有一个Android的标签,这个是在Android 4.4开始强制要求的,不然以前很多厂商改成跟自己家的系统一样,完全不把谷歌放在眼里。

其次是核心代码功能不能随意更改,必须遵守API的协议,某些厂商乱改底层导致一堆兼容性变差,谷歌被黑锅(说得就是中国定制的Android)。

还有很多条例就不一一列举。

但是开源必须遵守开源精神,这对作者也是一个尊重。

作为个人开发者的android开源定位我,使用他人代码依然会注明原作者信息。

欢迎在点击右上角关注:「太平洋电脑网」,不定时放送福利哦!

开源,全称为开放源代码,是每个人都能看到,每个人都可以在规则之内使用,使用和开发之后需要把你的产品返回到代码之中。

主要是为了人人为我,我为人人的精神,共同推动这个社区或者是这个系统进步。

安卓开源,那就是谷歌需要会把安卓的代码公布公开出来,方便用户在这个代码的基础上进行学习,同时也能修改,甚至可以进行商业化。

但是,你在这个基础上开发和修改的代码也需要公布出来,不能只索取不付出的,需要求同存异,互利共赢。

当然,这样做的方式,是想要通过全世界的程序员的力量,把开发的工作的难度降低了,提高了程序员的工作效率,避免重复造轮子。

同时,如果你用到了别人的代码,你需要备注代码的作者,表示对于作者的尊重。

所以说,安卓系统是全世界的程序员的成果,因为大家在这个基础上开发了是需要把代码公开的,供大家使用和学习的。这也是安卓能这么快发展和进步的原因,因为这汇聚了全世界程序员的智慧。

所以,世界上没有任何一个人能够阻止其他人去使用安卓系统的代码。谷歌不授权,也只不过是不能使用Google的APP,也不能使用G *** 服务协议而已。当然,这个在国外影响挺大的,但是依然可以使用安卓系统的。

安卓系统开源,就是安卓系统源代码对外开放,给你举个例子,假如你要写小说,小说的内容就像系统里面的代码,然后你发布到网上那么其他网站就会找你合作,希望得到你的授权,那么你同意过后才能发布,你当然希望有更多的人来看你的小说,也希望读者能给你提提建议,那么你肯定也会要求网站备注这个小说的作者是谁,一来防止别人修改你的小说内容,二来你可以收到读者的建议!那么你就会不断的完善其小说的内容!

那么你的小说内容对外发布,就相当于把源代码公开,这就是系统开源,然后就是别人拿你的小说内容拍电影,它也要表明影片内容的作者及作品,这相当于把你的作品作为影片内容的框架,可能在小说的内容上修改一下,然后拍成影片发布,说到这里,是不是明白什么是系统开。

也就是说我可以将我的系统开放给你使用,但是你只能在系统上进行创作和修改,因为这系统里面有我的版权技术在里面!我只是给你 *** 而已,当我不想给你使用,你必修删除我在系统里面的版权技术。

android (安卓)是完全开源的。

Android是一种基于Linux的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由Google(谷歌)公司和开放手机联盟领导及开发。

尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。Android操作系统最初由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。

2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。

扩展资料:

一、发展历程

2003年10月,Andy Rubin等人创建Android公司,并组建Android团队。

2005年8月17日,Google低调收购了成立仅22个月的高 科技 企业Android及其团队。安迪鲁宾成为Google公司工程部副总裁,继续负责Android项目。

2007年11月5日,谷歌公司正式向外界展示了这款名为Android的操作系统,并且在这天谷歌宣布建立一个全球性的联盟组织,该组织由34家手机制造商、软件开发商、电信运营商以及芯片制造商共同组成。

并与84家硬件制造商、软件开发商及电信营运商组成开放手持设备联盟(Open Handset Alliance)来共同研发改良Android系统,这一联盟将支持谷歌发布的手机操作系统以及应用软件,Google以Apache免费开源许可证的授权方式,发布了Android的源代码。

2008年,在GoogleI/O大会上,谷歌提出了AndroidHAL架构图,在同年8月18号,Android获得了美国联邦通信委员会(FCC)的批准,在2008年9月,谷歌正式发布了Android 1.0系统,这也是Android系统最早的版本。

二、系统内核

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工作的一个工具。

直白点就是可以改,你可以利用他转变为自己的需要,在系统中添加自己的功能,就说一个茄子吧,你可以拿来炒拿来煮,这个茄子就是开源的,某个人把茄子炒好给你端在面前,你只能拿来吃,这盘炒好的茄子就是闭源的,像win系统所有功能都摆在哪里你无法在系统里面去添加功能,

意思就是随便用,谁爱用谁用。

应该是开放源代码!就象设计师公开了自己的工程设计图线一样。那样别人就能够拿着别人公开的这些东西进行各种仿制和在人家的基础上做一些相应改动,从而弄成你想要要的样子。

开源的就是开放的。不开源,就是不提供开发细节。

开源就可以让别人掌握技术细节。不开源就不能掌握技术细节。

安卓手机可以虚拟定位吗

安卓手机可以虚拟定位。

一安卓手机

(1)安卓(Android)是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由美国Google公司和开放手机联盟领导及开发。

(2)Android操作系统最初由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。

(3)随后Google以Apache开源许可证的授权方式,发布了Android的源代码。之一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机、智能手表等。

(4)2011年之一季度,Android在全球的市场份额首次超过塞班系统,跃居全球之一。 2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。2013年09月24日谷歌开发的操作系统Android在迎来了5岁生日,全世界采用这款系统的设备数量已经达到10亿台。

android (安卓)是完全开源的吗?

android (安卓)是完全开源的。

Android是一种基于Linux的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由Google(谷歌)公司和开放手机联盟领导及开发。

尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。Android操作系统最初由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。

2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。

扩展资料:

一、发展历程

2003年10月,Andy Rubin等人创建Android公司,并组建Android团队。

2005年8月17日,Google低调收购了成立仅22个月的高科技企业Android及其团队。安迪鲁宾成为Google公司工程部副总裁,继续负责Android项目。

2007年11月5日,谷歌公司正式向外界展示了这款名为Android的操作系统,并且在这天谷歌宣布建立一个全球性的联盟组织,该组织由34家手机制造商、软件开发商、电信运营商以及芯片制造商共同组成。

并与84家硬件制造商、软件开发商及电信营运商组成开放手持设备联盟(Open Handset Alliance)来共同研发改良Android系统,这一联盟将支持谷歌发布的手机操作系统以及应用软件,Google以Apache免费开源许可证的授权方式,发布了Android的源代码。

2008年,在GoogleI/O大会上,谷歌提出了AndroidHAL架构图,在同年8月18号,Android获得了美国联邦通信委员会(FCC)的批准,在2008年9月,谷歌正式发布了Android 1.0系统,这也是Android系统最早的版本。

二、系统内核

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

发表评论

访客 游客 2022-10-26 · 回复该评论
是非常重要的帮助。 像Android的系统就是开源的,基于Linux程序开发的一个Java虚拟器,然后在这个设备里运行Java。很多手机厂商在原生Android系统里添加一些定制的功能,形成独有的系统特色,这些操作也不用谷歌授权。但有个前提,只能修

取消
微信二维码
支付宝二维码