2024年安卓最全Android系统移植全过程,2024年最新安卓工程面试问题

最后

都说三年是程序员的一个坎,能否晋升或者提高自己的核心竞争力,这几年就十分关键。

技术发展的这么快,从哪些方面开始学习,才能达到高级工程师水平,最后进阶到Android架构师/技术专家?我总结了这 5大块;

我搜集整理过这几年阿里,以及腾讯,字节跳动,华为,小米等公司的面试题,把面试的要求和技术点梳理成一份大而全的“ Android架构师”面试 Xmind(实际上比预期多花了不少精力),包含知识脉络 + 分支细节。

网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。

2021年虽然路途坎坷,都在说Android要没落,但是,不要慌,做自己的计划,学自己的习,竞争无处不在,每个行业都是如此。相信自己,没有做不到的,只有想不到的。祝大家2021年万事大吉。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

$sudo apt-get install libwxgtk2.6-dev zip curl minicom tftpd

$sudo apt-get install uboot-mkimage libx11-dev libncurses-dev

$sudo apt-get install expect bison build-essential flex zlib1g-dev

四.  JAVA工具安装

1.  JAVA安装时我遇到很多问题:

如果已经安装了sun-java6-jdk,编绎时会提示下列错误:

Your version is: java version “1.6.0_20”.

The correct version is: 1.5.

或者是没有提示,可是最后编绎仍然失败,说找不到很多库.

如果已经安装了sun-java5-jdk,编绎时会提示下列错误:

Your version is: java version “1.5.0_19”

The correct version is: 1.6.

2. 后来我想了一个办法,试了ubuntu9.10和ubuntu10.04都可以正常工作了

安装步骤:

(1). 对于Ubuntu 9.10以上用户,先修改 /etc/apt/sources.list

在结尾增加两行:

deb http://cn.archive.ubuntu.com/ubuntu/ jaunty multiverse

deb http://cn.archive.ubuntu.com/ubuntu/ jaunty-updates multiverse

然后执行

$ sudo apt-get update

(2). 安装sun-java6-jdk

$ sudo apt-get install sun-java6-jdk

(3). 卸载sun-java6-jdk

$ sudo apt-get remove sun-java6-jdk

$ sudo apt-get remove sun-java6-bin

(4). 安装sun-java5-jdk

$ sudo apt-get install sun-java5-jdk

安装过程会有一个图形界面,如果你按不了确定,请用TAB键切过去就可以了。

安装完看一下版本

$ java -version

java version “1.5.0_19”

Java™ 2 Runtime Environment, Standard Edition (build 1.5.0_19-b02)

Java HotSpot™ Client VM (build 1.5.0_19-b02, mixed mode, sharing)

至此,开发环境完成!

Android SDK篇

一.  安装repo

01.$ curl http://android.git.kernel.org/repo> /bin/repo /*我选择安装到/bin目录*/

02.$ chmod a+x /bin/repo

复制代码二.  建立工作目录

01.$ export ANDROID=你的android目录 #定义source路径

02.$ mkdir -p $ANDROID

03.$ cd $ANDROID

复制代码三.  下载源码

1. 先下载manifest所有的东东

01.$ repo init -u git://android.git.kernel.org/platform/manifest.git

02.$ repo sync

复制代码1.7G的文件,下载起来不容易,所以这时我们要做好备份工作。

下载完后,有一个隐藏的文件夹".repo",把这个另外保存起来就可以了,其它文件可以删了。

2. 获取 android-2.2_r1.1 项目

(1) 初始化android-2.2_r1.1项目

01.$ repo init -u git://android.git.kernel.org/platform/manifest.git -b android-2.2_r1.1

(复制代码(2) 创建local_manifest.xml文件

01.$ touch .repo/local_manifest.xml

02.$ vi .repo/local_manifest.xml

复制代码/*不想用vi,也可以用gedit*/

复制下列内容: /* 目前是先用ALSA相关的东西,以后可能要我们自已选择 */

01.<?xml version="1.0" encoding="UTF-8"?>

02.

03. 

04. 

05. 

06.

复制代码(3) 同步)(本人认为红色部分可以不做,没什么必要)

01.$ repo sync

复制代码由于前面做过sync工作,所以现在快很多,只用几分钟可完成。

四.  I8320 补丁

01.$ cd $ANDROID

02.方法一:直接下载附件,解压到当前目录,可看到vendor文件夹。此方法不推荐,尽供备份。

03.方法二:推荐从 mephistoph 的git仓库里取得最新的vendor:

04.$ git clone git://gitorious.org/h1droid/vendor.git

05.然后将vendor文件夹复制到$ANDROID目录

06.$ cd vendor

07.$ ./sola/omap3/patch/omap3-patch.sh

复制代码五.  Android编绎

01.$ cd $ANDROID

02.$ source build/envsetup.sh

03.$ lunch i8320board-eng

04.$ make -j3

复制代码五.  为了最后能生成image文件,环境准备工作

01.$ cd $ANDROID

02.$ ./vendor/sola/omap3/image/i8320board-image.sh

复制代码六.  TI 公司 Android SGX SDK 获取,这是生成SDK image的工具。

1. 安装TI_Android_SGX_SDK

01.$ cd $ANDROID

02.$ git clone git://gitorious.org/rowboat/ti_android_sgx_sdk.git TI_Android_SGX_SDK

03.$ cd TI_Android_SGX_SDK

04.$ ./OMAP35x_Android_Graphics_SDK_setuplinux_3_01_00_03.bin

复制代码这时会有界面出来,我们开始安装SDK工具,注意安装目录一定为当前目录(TI_Android_SGX_SDK)。

2. 修改make规则。

安装完毕后,编辑/opt/OMAP35x_Android_Graphics_SDK_3_01_00_03/Rules.make文件。

找到文件中对应的地方,修改下面内容:

01.HOME=$(ANDROID)

02.GRAPHICS_INSTALL_DIR=$(ANDROID)/TI_Android_SGX_SDK

03.ANDROID_ROOT=$(ANDROID)/vendor/sola/omap3/image/i8320board/android

04.CSTOOL_DIR=$(ANDROID)/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/

05.KERNEL_INSTALL_DIR=[color=DarkOrchid]linux内核绝对路径

复制代码3. 执行下列命令注意,每次修改内核kernel部分后也要重新做下面步骤)

01.$ cd $ANDROID/TI_Android_SGX_SDK

02.$ make

03.$ make install OMAPES=3.x

复制代码这时你的SDK image产生了。

七.  复制image到TF卡

TF卡要求: 200M以上,ext3文件系统。

进入 $ANDROID/vendor/sola/omap3/image/i8320board/android 目录,所有文件复制到TF卡根目录。

八.  运行

将I8320进入download状态,然后插上USB线,下载boot.bin

01.$ cd odin

题外话

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在IT学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多程序员朋友无法获得正确的资料得到学习提升,故此将并将重要的Android进阶资料包括自定义view、性能优化、MVC与MVP与MVVM三大框架的区别、NDK技术、阿里面试题精编汇总、常见源码分析等学习资料。

【Android思维脑图(技能树)】

知识不体系?这里还有整理出来的Android进阶学习的思维脑图,给大家参考一个方向。

希望我能够用我的力量帮助更多迷茫、困惑的朋友们,帮助大家在IT道路上学习和发展~

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

图(技能树)】**

知识不体系?这里还有整理出来的Android进阶学习的思维脑图,给大家参考一个方向。

[外链图片转存中…(img-vN19FUbO-1714997206159)]

希望我能够用我的力量帮助更多迷茫、困惑的朋友们,帮助大家在IT道路上学习和发展~

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 15
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值