已掉线,重新登录

首页 > 绿虎论坛 > 历史版块 > 手机 > 安卓

标题: 我们到底能对安卓做何种程度的修改?

作者: @Ta

时间: 2013-08-05

点击: 4866

众所周知,安卓虽然打着开源的旗帜,但为了商业化,做的事却不足为人道。
至今我也没看到安卓的源码。
我们对安卓的定制能从源码级定制吗?
还是只能像众多厂商一样只能定制前台部分?
求告知!
@老虎会游泳

[隐藏样式|查看源码]


『回复列表(11|隐藏机器人聊天)』

1. 小心谷歌有后台,流量监控有时会监控到名为“系统组件”的在跑流量,而且是几十K的跑
(/@Ta/2013-08-05 00:54//)

2. 不知道
(/@Ta/2013-08-05 01:51//)

3. @幻阳化翼,安卓的所有部分都是由Apache许可证、BSD许可证、FreeBSD许可证、Mit许可证等开放源代码协议授权公开发行的。
安卓整个项目通过Git管理,托管在谷歌自己的网站上,任何人都可以去git clone。
不过由于完整的项目被分成了好几个部分存储在不同版本库,所以安卓开发者做了个叫repo的工具来管理安卓的源代码。
repo是一个用perl脚本写的基于Git的安卓源代码管理工具,一般我们在Linux上运行。
接下来我们去看看怎样用repo下载安卓源代码。
(/@Ta/2013-08-05 07:26//)

4. http://source.android.com/source/initializing.htmlrepo和安卓编译环境的安装
http://source.android.com/source/downloading.html下载源代码
接下来还有三篇:
Building and Running(编译和运行)
Building for Devices(为安卓设备编译)
Building Kernels(编译内核)


Linux内核是基于GPL的,所以任何人都无法阻止它的开放源代码。
安卓系统定制的第一步:编写适合特定硬件的内核驱动,然后编译进内核,并对内核功能进行微调。


安卓系统的编译过程相对漫长,因为要编译一个内核,一些二进制(比如adbd、sh等),和一堆apk。
编译apk的javac总是慢吞吞的。
(/@Ta/2013-08-05 07:41//)

5. 与GPL不同,Apache许、BSD、FreeBSD、Mit等许可证不是强制性的,它们允许开发者在发布修改过的软件时,不公开软件的源代码。
但是使用Apache许可证的Apache服务器依然是一个活跃的开放源代码项目。
为什么有人因为安卓使用Apache许可证而对它另眼相看,但是他们却没有对Apache另眼相看呢?
使用什么许可证发布自己的作品是作者的自由,我们应该给予尊重。
(/@Ta/2013-08-05 08:02//)

6. @老虎会游泳,嗯,明白了
(/@Ta/2013-08-05 08:57//)

8. @老虎会游泳,我们唯一看不到源码的就只是硬件厂商定制的硬件驱动吗?
(/@Ta/2013-08-05 09:20//)

9. @幻阳化翼,可以这么说。
就连厂商写的apk看源代码也很容易,dex2jar,然后反编译jar。
不过其实厂商写的内核驱动本来是应该开放源代码的,这是GPL的规定。
大部分厂商都违反了GPL,在发布安卓手机的同时没有提供其Linux内核的源代码。
(/@Ta/2013-08-05 15:56//)

10. @老虎会游泳,如果厂商提供了内核源代码,我们就能完全定制自己的手机系统吗?
(/@Ta/2013-08-05 16:05//)

11. @幻阳化翼,如果你有内核源代码,并且可以刷机,那么你就有了完全重新实现系统的可能。
当然还只是可能,因为安卓有一个硬件抽象层,允许部分硬件驱动运行在内核之外,并且不开放源代码。
然而即便如此,有了内核源代码,我们也可以试试对没有安卓4.0的手机编译安卓4.0,大不了复制那些“运行在内核外的驱动”过来。
(/@Ta/2013-08-05 16:18//)

12. @老虎会游泳,噢,谢谢哈,基本明白了!
(/@Ta/2013-08-05 16:20//)

回复需要登录

9月15日 21:36 星期一

本站由hu60wap6驱动

备案号: 京ICP备18041936号-1