Mac下Android Framework源碼環境搭建運行及調試方法

本文做爲 Android Framework 學習的開篇,主要介紹了在Mac環境下的源碼下載、編譯、運行、導入閱讀、調試等步驟。裏面更可能是整理不一樣文章的信息,因爲是一些配置較多的東西,因此這篇文章更可能是記錄和供參考。php

1 環境準備

  1. Mac 系統版本號 10.12.6
  2. XCode 版本號 8.3.3

我以前的系統是 Mac 10.13 ,後來在編譯的過程當中遇到各類問題,雖然大部分都解決了,可是在後面的虛擬機運行中又遇到 HAXM not support 等問題,因此最後選擇降級系統。Max系統降級能夠參考該文章 手欠MacBook升級OS V10.13失敗,教你蘋果系統降級自救的方法html

而後用一塊移動硬盤專門存放源碼。這裏要對硬盤進行分區,分區類型選擇 Mac OS 擴展(區分大小寫,日誌式)。大概要分出 250GB 大小。java

分區信息

分區信息

2 源碼下載

參見 github-android-open-source-project-analysis(2 下載repo工具 、3 下載源碼)android

下載源碼

下載源碼

下載源碼

3 編譯

下載完成後進入源碼目錄,開始編譯。首先要切換shell,要使用 bash 進行編譯git

chsh -s /bin/bash
複製代碼

清空以前build的文件程序員

make clobber
複製代碼

3.1 完整編譯

編譯須要設置環境變量和選擇打出image的版本github

source build/envsetup.sh
 
lunch aosp_x86_64-userdebug //打出的img小一點 虛擬機運行起來快一點

make -j8  //根據個人cpu線程數決定
複製代碼

若是出現 JDK 沒有設置的錯誤,則運行shell

export ANDROID_JAVA_HOME=$(/usr/libexec/java_home -v 1.8)
複製代碼

參考 macOS(Sierra 10.12)上Android源碼(AOSP)的下載、編譯與導入到Android Studio - 編譯bash

參考 Android FrameWork學習(一)Android 7.0系統源碼下載\編譯架構

3.2 部分編譯

當修改了部分模塊後,不須要總體從新編譯,只須要編譯想應模塊便可。

編譯須要設置環境變量和選擇打出image的版本

source build/envsetup.sh
 
lunch aosp_x86_64-userdebug

mmm ./packages/experimental/HelloAndroid/

make snod
複製代碼

參考 進擊的程序員-1.6.1 導入單獨編譯模塊的mmm命令

4 運行

虛擬機運行

emulator -partition-size 4096 -memory 2048
複製代碼

5 導入 Android Studio

先生成項目文件

source build/envsetup.sh  

mmm development/tools/idegen/  

./development/tools/idegen/idegen.sh
複製代碼

參考 Android FrameWork學習(二)Android系統源碼調試

跳轉問題:dependence順序要提到最上面

image

6 調試debug

參考 Android FrameWork學習(二)Android系統源碼調試

7 aosp架構目錄簡介

https://blog.csdn.net/itachi85/article/details/54695046

相關文章
相關標籤/搜索