如何学习Android驱动开发
如何成为一名优秀的Android驱动程序员?(参考之前看过的一篇文章总结出来的,不记得原文链接了)要求如下:
一、Android驱动的基础知识
1.Android驱动是基于Linux驱动,强烈推荐阅读Linux Device Driver 3rd版,这本书讲了Linux下设备驱动的基础知识,要求反复细读。
2.能读懂和编写一些C程序。
3.能懂Java基础,因为Framework层的代码与驱动代码联系比较紧密,稍懂一些Java代码,会发现对整个驱动框架的了解更加熟悉。
二、Android/Linux相关驱动框架知识
1.需要Android/Linux相关的知识。
2.需要对Android各模块驱动框架的了解。
3.需要基本的Android调试能力。
三、相关的硬件知识和通信知识
1.Android驱动平时的工作就是调试各种外围设备,是直接跟硬件打交道,需要看得懂电路原理图,了解基本的显示原理和基本的摄像头成像原理等。
2.做Android手机,需要了解基本的通信相关知识,射频原理和基本的Modem相关知识,只有懂相关的硬件知识和通讯设备相关的基础知识,才可以写出更好的Android驱动程序。
四、热爱驱动开发和不断学习
做Android驱动开发需要的是不断的学习,时刻保持着一股激情,不断的学习才能更好的完成日常的驱动开发任务,并能保持对开发的敏锐感觉。就如乔布斯所说的:Stay hungry, Stay foolish.
如何学习Android驱动开发相关推荐
- Android菜鸟如何学习Android系统开发?
如何做好Android学习前的准备? 如果你已经确定了学习Android的目标,那么,应该提前做好哪些工作.先打下哪些基础呢? 首先,你最好先熟悉一门编程语言,现在大学里面和计算机相关的专业甚至理工类 ...
- Android菜鸟如何学习Android系统开发?(
如何做好Android学习前的准备? 如果你已经确定了学习Android的目标,那么,应该提前做好哪些工作.先打下哪些基础呢? 首先,你最好先熟悉一门编程语言,现在大学里面和计算机相关的专业甚至理工类 ...
- 初入android驱动开发之字符设备(一)
大学毕业,初入公司,招进去的是android驱动开发工程师的岗位,那时候刚进去,首先学到的就是如何搭建kernel.android的编译环境,然后就是了解如何刷设备以及一些最基本的工具.如adb.fa ...
- Android驱动开发全过程
Android驱动开发全过程(有图有真相) 前言 意外在网上发现了这扁文章,看后感觉很有必要分享,所以整理并上传,希望大家喜欢. Android 硬件抽象层(HAL)概要介绍和学习计划 Android ...
- Android 驱动(3)---Android驱动开发知识储备
Android驱动开发知识储备 Android软件层次结构 (1)操作系统层 显示驱动(Frame Buffer),Flash内存驱动,照相机驱动,音频驱动,WiFi驱动,键盘驱动,蓝牙驱动,Bind ...
- android驱动开发工程师,android驱动开发工程师
android驱动开发工程师 任职资格: 1.精通android基础知识,熟悉android底层,了解frameworks层: 2.熟悉MTK.高通等手机或平板电脑平台,有调试MTK6735.MTK6 ...
- Android驱动开发之陀螺仪(三)
Android驱动开发之陀螺仪(二) 五.安卓hal层驱动数据读取 使能陀螺仪后,由于我配置的是原始数据准备中断,所以陀螺仪数据一旦准备好,就会发送中断信号,之前在第二章已经分析过中断的注册流程,这里 ...
- Android驱动开发之陀螺仪(一)
Android驱动开发之陀螺仪 开发平台:君正M200S 安卓系统:Android5.1 一.前言 很不容易,经过几天加班加点的调试,终于成功将MPU9250移植到这块板子上,在此记录下这个兴奋的时刻 ...
- Linux/android 驱动开发学习
参考资料: <Android深度探索 卷1 HAL与驱动开发.pdf> <嵌入式linux开发教程(下册).pdf> https://blog.51cto.com/u_1380 ...
最新文章
- mysql query 查询失败_如何在mysql进行查询缓存及失败的解决方法
- 谈谈对python的理解_浅谈对python pandas中 inplace 参数的理解
- 《JavaScript高级程序设计》阅读笔记(一):ECMAScript基础
- 蛇哥开局两星机器人视频_虎牙粉丝活动落幕,蛇哥骚男夺冠,拿下季军的吃鸡一姐直播却哭了...
- IIS7.5 配置MVC3.0 伪静态,不能访问html伪静态页面
- 【Flink】flink并行度与kafka分区(partition)设置
- 华中农业大学第五届程序设计大赛网络同步赛解题报告2(转)
- 虚拟麦克风音频输入_收音和录音一次性解决了,这个机顶麦克风可以录音?
- Call to a member function display() on a non-object。。。。
- JAVA定时调度框架Quartz使用案例
- 格式化移动硬盘或者U盘,并设置为NTFS格式
- 设置局域网内共享磁盘
- 智慧城市物联网主要技术路线
- 生物信息学 陈铭_生物信息学Bioinformatics-山东大学课程中心.PDF
- 【搜集】前端面试题总结
- 图片如何修复清晰度?好用的图片修复方法介绍
- 玩转Qml(18)-用户向导
- 实习生两大杀手之一:Git 引入
- 懂得都懂,一行代码解决无法复制粘贴问题
- linux卸载k8s,K8S镜像删除及环境清理
热门文章
- 男孩子学计算机好不好,适合男孩学的专业 男生最吃香的专业
- Python爬取6271家死亡公司数据,一眼看尽十年创业公司消亡史!
- 京剧《赤壁》舌战群儒
- Interview with Dustin Kirkland, Ubuntu Core Developer about encryption in Ubuntu
- ubuntu18.04 分辨率突然变小,添加1920x1080分辨率,转完变卡默认成集显llvmpipe改独显方法
- VS2010如何安装MSComm控件
- 计算机组成原理mgk换算,计算机组成原理十套卷(本科)计算题及答案
- 第1关:启动 MongoDB
- 压缩包安装fitter库,gbk编码错误解决方法
- HiveSQL一天一个小技巧:如何借助于str_to_map进行行转列