android开发的三个类型

来源:互联网 发布:手机游戏录制软件 编辑:程序博客网 时间:2024/05/29 03:20

      各位android开发的朋友应该都有这样的经历,就是在我们去面试时都有被面试官问 到:你会不会修改android框架啊?你会不会修改android SDK源码?笔者在刚从事android 开发到一些公司去面试时就经常遇到这样的情况, 也老是这样一个问题无语, 因为笔者是做android应用开发的,在开发根本就没有遇到有需求要去修改框架的开发,大家都知道应用 开发一般情况下是没必要去修改框架的。

下面为大家简单的说一下这所谓的框架开发和SDK 源码开发是怎么一回事?如果我们下次遇到了应该怎么回答面试考比较好。

      首先说明修改框架不是做应用程序员的事,一般是一些手机厂商需要定制自己的 android系统才去修改框架,例如修改一些启动界面,替换一些图片,修改底层库等,修改完成后再自行编译,便成了自己的定制版android系统。如小米手机,魅族手机需要自己定制的android系统。

Android的开发分为三个类型:


移植开发移动设备系统;
android系统级开发
android应用程序开发。

1、移植开发移动设备系统:
移植开发移动设备涉及到linux内核(包括其驱动),主要是一个手机制造商。

2、Android系统级开发:
指的是扩展android的框架或者是修改bug,这方面比较少, 除非有些开发移动设备的厂商,比如做gps,可以往里面加入一些自己的特定系统东西,这 可能导致一些不兼容。当然也可能是简单的修复bug,android系统级开发涉及到C/C++库的开发及给上层java框架;其产品是不同的android应用程序。

3、开发应用程序:
这应该是比较主流的开发,也就是给android系统写应用程序。android 应用程序开发就是调用java的框架写应用程序,简单的从上到下。


android开发就分为基于sdk开发和源代码开发。
 
1、SDK开发,主要是应用程序开发,就是我们平常的android 应用开发


2、源代码的开发,主要在获取所有源代码的基础上进行,可以开发Android应用程序,进行系统移植或者开发Android系统本身。一般手机厂商会用到,涉及修改源码,设计出适合自己手机的UI。而SDK源码的修改,也就是我们在创建项目时需导入那个android.jar 包不再是android 官方下载SDK文件夹下各个平台中那个andorid.jar包了,而是得导入自己修改后的 android.jar包, 这就是所谓的SDK源码修改, 但是一般的应用开发是完全没有必要去修改SDK 源码的,因为它需要相应的硬件支持,至于如何修改android 框架及修改SDK源码的各个方法和途径, 笔者在这里就不做任何 说明了,大家可以在网上搜索一下就可以找到大量经典的介绍文章。


在面试时如何应对这样的问题:(下面仅是笔者个人的一些看法,若错误或其它,还请大家指点)
通过上面的简单介绍希望大家对所谓的修改框架和修改SDK
源码有一定的了解,下次 我们去面试时,如果再遇到这样的问题,而你却只是一个从事android应用开发的,我们不 需要慌,你可以自己知道多少就与面试官说多少,也可以反过来问一下面试官:你要修改框架?你要修改框架哪里啊?你要过达到一个什么功能?我们甚至可以反问他:你知道 android系统在
GPRS状态下是如何自动切换到WIFI状态下的?等等问题,当然笔者这样说, 只是为想告诉大家,告诉面试官,android
系统复杂,一个人不可能对每一个方面都熟悉。
更多资料请进安卓开发网
www.androidkaifa.com