首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >将自己编译的AOSP刷入nexus5

将自己编译的AOSP刷入nexus5

作者头像
用户2930595
发布2018-08-23 10:14:00
1.7K0
发布2018-08-23 10:14:00
举报

ubuntu14.04编译Android4.4源码讲述了用于模拟器的AOSP编译过程,在完整编译了源码以后,会自动将编译结果目录加入到path中,此时运行 emulator 即可在模拟器中运行自己的编译结果。

但是要在真机上运行,还需要一些其他的工作。

  1. 真机运行需要厂商的驱动,厂商的驱动是不包含在AOSP中的,你需要根据你选择的Branch: https://source.android.com/source/build-numbers.html 去驱动页面: https://developers.google.com/android/nexus/drivers#shamulrx21o 下载合适的驱动。

比如,我编译的是Branch是android-5.1.0_r1,对应的Build是LMY47D,在驱动页面找到对应的驱动是:

Nexus 5 (GSM/LTE) binaries for Android 5.1.0 (LMY47D)
... //下面有几个驱动链接
  1. 将驱动文件下载后,解压到AOSP根目录,得到几个.sh文件,执行后,会在AOSP下创建vendor目录,里面包含了驱动。 执行 make clobber 清除一下产生的无关文件。
  2. 再次 make -j4,此次编译的结果就包含了驱动,编译完成后,执行make fastboot adb 单独编译fastboot和adb。
  3. 将nexus5 调至 fastboot模式 方法一: 能够adb链接的时候执行 adb reboot bootloader。 方法二: 关机状态下,同时按音量上下键。
  4. 在fastboot模式下,执行 fastboot oem unlock解锁bootloader,如果已经解锁,启动界面的google图标下有一把打开的锁。
  5. 执行which fastboot找到fastboot的目录,我的在AOSP/out/host/linux-x86/bin
  6. 电脑先切换到su用户下,这一步很重要,否则后面会有no devices, no permissions等错误。
  7. 在su下,切换至AOSP/out/host/linux-x86/bin,运行./fastboot devices,将看到有一台连接的设备。
  8. 执行./fastboot -w flashall,提示错误:error: neither -p product specified nor ANDROID_PRODUCT_OUT set,原因是ANDROID_PRODUCT_OUT没有设置,找不到编译的.img文件,执行: export ANDROID_PRODUCT_OUT=/your/path/to/img
  9. 再次执行./fastboot -w flashall将开始刷机,刷完会自动重启,over!

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016.03.28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档