1.应用程序移植
android的apps都是java写的,移植注意每个版本有不同的API Level,比较变化,把apps重新编译。
2.移植硬件
android的分支以产“品的”的概念做维护。1.5版本移植只要在vendor/目录下增加自己的product并修改AndroidBoard.mk、AndroidProducts.mk和BoardConfig.mk。
3.Android Framework
加入新的library时要扩充Application framework,Android Framework以JNI呼叫下一层的Library,app不直接调用API,Android Framework部分需要考虑硬件的规格。
4.库
同一种算法在不同的处理器架构上可能不一样,移植时需要考虑,android的共享C库是BSD的libc移植的,叫做Bionic。
5.不同的处理器需要不同的Dalvik VM(Android虚拟机),需要移植的是JNI(Java Native Interface)和Interpreter(解释器)。