不同设备的相同ROM之间有什么区别?

时间:2012-12-07 20:21:54

标签: android operating-system porting cyanogenmod hal

例如,有人能给出三星i9100g的Cyanogen Mod 10和i9100的CM 10之间差异的具体例子吗?

据我所知,他们有不同的硬件,这就是他们的驱动程序不同的原因,因此他们的HAL与另一个非常不同。但是,我希望有一个示例包含-maybe-几行代码。

我知道有很多人想要进入Android移植/开发,并且不知道如何开始修改/更改,我就是其中之一。我认为这个问题的答案对那些人有益。

1 个答案:

答案 0 :(得分:3)

最大的将是内核和RIL(无线电接口层)。

不同的设备有不同的硬件。不同的硬件需要不同的驱动如果你有两个类似的设备,通常很少需要修改在兄弟设备上运行一个操作系统。但是,即使外部看起来相同的硬件也可能具有截然不同的内部结构。

如果您想进入平台开发,请关注一些人,并查看他们正在做的事情。 jt1134为三星设备做了很多内核和平台开发。 CyanogenMod org还有很多值得关注的代码,团队甚至还有a wiki,其中介绍了有关从源代码构建的更精细的细节。

您还应该坐在Freenode和Mod-a-droid服务器上的Android开发IRC室中。您可以提出问题,但并不总是希望得到答案。你甚至可以在freenode上尝试PMing jt1134(如果他还挂在那里),如果你能说服他你知道你在做什么<<<<<<<<<<正如在阅读所有公开可用的文档中一样。

以下是您需要遵循的流程大纲。

里程碑:

0.5。设置开发环境http://source.android.com/source/initializing.html

  1. 下载kernel sources from Samsung
  2. 编译Linux内核。
  3. 浏览source.android.com
  4. 上的所有开发人员文档
  5. googlesource下载Android平台来源。
  6. 进行设备所需的任何修改(例如:您可能需要设备的特定供应商文件(驱动程序),您可能需要一些自定义初始化脚本等。)。
  7. 编译android平台< - 这需要很长时间
  8. 在此之后,您应该拥有可在设备上测试的Android开源项目的OTA可刷新副本。这个过程花了我一个月的时间来研究和挫败,这不是一件小事,我祝你好运。