Android是个开源的操作系统,所以可以选择的开发方式主要有两种:

  • Android系统开发(移植);
  • Android应用开发

1.Android系统开发(移植)

Android系统开发(移植)属于底层的开发工作,主要针对Android系统本身进行完善和将其移植到其它的硬件平台,因此需要掌握Android系统构架中的Linux内核层和系统运行库层。

Android系统开发主要涉及Libraries和Android runtime这两部分内容,一般就是在本地编写C/C++代码,然后通过JNI向上层提供调用接口,主要是为应用开发提供服务等工作。

Android系统移植则主要涉及硬件抽象层和Linux内核层,移植的主要工作是将驱动移植到不同平台上,使其能够完美得运行Android系统。这些驱动又主要包括设备驱动和Android专用驱动。

2.Android应用开发

Android应用开发主要是根据Android系统所提供的API来完成各种应用程序的编写,所使用的API属于Android的应用框架层。如果Android系统没有提供某些API,那么只能通过Android系统底层编写C/C++代码来开发这些API并向Android应用框架层提供接口,但是这样有可能会导致你的应用程序与其他Android系统不兼容。应用开发属于上层开发。

Android系统开发(移植)和应用开发相关推荐

  1. Android 系统(191)---ODM 开发用户常见需求文档(九)

    Android 系统(191)---ODM 开发用户常见需求文档(九) 阅读数:1122 一:去除摄像头的假对焦框 (vendor/) (mediatek/proprietary/packages/a ...

  2. Android系统 linux内核按键驱动开发

    Android系统 linux内核按键驱动开发 前言 刚入门的小白,在csdn的帮助下完成了第一个按键驱动,特写此文记录学习并分享给有需要的人. 1.修改设备树.dts 我是用的开发板是rp-rk32 ...

  3. android系统应用的平台化开发

    android系统应用的平台化开发,一种开发思路,旨在方便平台开发. 在android操作系统中,源码编译生成app,加入带系统签名的app,这些应用都带有系统权限,统一放在了system/app或者 ...

  4. 安卓底层linux开发教程,Android手机平台移植与底层开发 PDF

    支持Android的热门ARM硬件平台简介 ARMv7架构SOC l TI OMAP系列,2009年OMAP3和OMAP4关注度较高 l Freescale i.MX51系列 l Qualcomm 8 ...

  5. android 打印机服务,Android系统打印服务插件printservice开发

    一 简介 从Android4.4开始,系统加入了打印相关的API,可以通过系统打印服务实现打印.对于需要使用打印功能的APP可参考官方教程接入打印服务. 这不是本文的内容,本文介绍打印机厂商如何使自己 ...

  6. 关于android系统的移植

    众所周知android是基于linux开发,如果了解android的底层实现,会知道安卓系统实际上可以说是基于linux的一个"应用层",那么这个"应用层"是否 ...

  7. Android系统触摸屏移植后出现小圆圈

    移植FT6X系列的触摸屏后,发现系统工作并不能像正常触摸屏那样,而是出现了一个小圆圈,像鼠标一样移动,进过查找相关资料,终于发现出现这种状况的原因是因为Android系统把触摸屏当成触摸板,所以才会出 ...

  8. Android 系统(132)---ODM 开发用户常见需求文档(六)

    ODM 开发用户常见需求文档(六) 一:锁卡界面显示哪张SIM卡 (frameworks/base/packages/Keyguard/src/com/mediatek/keyguard/Teleph ...

  9. Android 系统 (131)---ODM 开发用户常见需求文档(五)

    ODM 开发用户常见需求文档(五) 一:图库中的照片全屏显 (packages/apps/Gallery2/) 第一种: [java] view plaincopy diff --git a/src/ ...

  10. Android 系统 (130)---ODM 开发用户常见需求文档(四)

    ODM 开发用户常见需求文档(四) 一:取消用户模式 (frameworks/) diff --git a/base/packages/SystemUI/res/layout/keyguard_sta ...

最新文章

  1. 如何向非技术人员解释“稀疏傅里叶变换”算法?
  2. Android开发之适配器模式初探
  3. python怎么安装numpy库-Python NumPy库的安装和使用
  4. python中列表数据汇总和平均值_python的列表List求均值和中位数实例
  5. Java EE 架构设计——基于okhttp3 的网络框架设计
  6. Spring Boot统一异常处理实践
  7. js 開始时间,当前时间,结束时间的比較
  8. JVM总结(一):概念----(无节操转载,潜心学习)
  9. dba_tables 和 dba_segments 表中 blocks 的区别
  10. oracle10安装完成之后测试,RHEL4U4和RHEL5安装oracle10g(测试过绝对可以成功)
  11. windows10去桌面图标小箭头和恢复小箭头
  12. 处理安卓机不支持backdrop-filter毛玻璃效果样式
  13. 流年暗换,是什么偷走了我们的爱情
  14. 一般试卷的纸张大小是多少_试卷,考试试卷是多大的纸
  15. OpenNURBS 3DM Viewer
  16. atlas mysql 安装_Atlas安装配置
  17. 【定位原理揭秘第四期】精准导航领域的定位技术(在高架、隧道、主辅路识别中如何实现)
  18. MDUKEY创始人兼CEO韩元桢明确将通过“价格保障机制”确保MDU投资人的长久利益
  19. highcharts饼图展示
  20. pythonweb渗透工具_python web渗透测试工具学习2Web应用交互2访问web工具requests

热门文章

  1. 蓝桥杯——海盗喝酒(循环)
  2. 云开发喝酒小程序3.6源码/全新漂亮UI猜拳喝酒小程序
  3. 中国石油大学《物理化学》在线考试
  4. 为网建公司注入专业前端力量
  5. Android 如何将定制的Launcher成为系统中唯一的Launcher
  6. 计算机在平面设计上的应用,计算机平面设计中设计软件的作用
  7. 傻瓜式教学:c++操作Excel
  8. Spring循环依赖流程分析
  9. 3dsmax如何为植物发光?
  10. Filetype修改上传