當前位置:首頁 » 編程軟體 » 安卓源碼編譯與環境搭建

安卓源碼編譯與環境搭建

發布時間: 2022-08-30 22:27:19

『壹』 如何搭建android framework開發環境搭建

framework的開發比應用層就要煩的多啦。做應用在eclipse中就足夠了,用android系統中的控制項等工具,或者是自己寫個類來實現特定的功能。而framework層的開發,需要往源碼中添加代碼、xml、圖片、id等等數據,這個id可是費了我好大的勁才搞定的。在項目開始的一個半月里,我探索、嘗試了很多,現在把我的經驗分享出來。網上關於framework層的開發信息很少,多是靠自己。 最有效的方式就是分析android的源碼,看google是怎樣實現一個類的,以及類的層次。我現在看的主要是widget和app中的代碼,其他的還沒涉及。像View,ViewGroup,Activity,ActivityThread都是非常重要的類,也是代碼量很大的類,我只是大概地過了下,還沒有仔細分析過。 我花大力氣的地方是資源文件夾下values中幾個文件的作用。 attrs.xml中定義的是類的屬性,屬性是為了能在xml文件中被引用到,換句話說就是指定類中變數(也就是屬性的實際作用者)的值。這些屬性會在類的構造函數中用到。看過一兩個源碼就會明白,構造函數中的TypedArray其實就是屬性的數組,數組的成員會被賦給類里的成員,完成從xml的初始化。類的構造函數一般有三個,一個是Class(context),這個用於在代碼中創建一個類,所以只包含一個上下文;Class(context, attrs)和Class(context, attrs, defStyle)用於從xml創建類的情況。 styles.xml中是各個控制項的「樣式」,樣式由一個個屬性所組成。我們在編輯xml文件的時候,不同的類所能設置的屬性有共同的,也有不同的,都是由樣式來控制的。具體可以去看styles.xml這個文件的內容。 themes.xml其實也是樣式,只是適用的范圍大一點,這個我是參考網上別人的看法,自己還沒研究過。 ids.xml是公共的id,也就是對應用層可見的id,id是為了獲得xml中的對象而需要的參數,也就是Object = findViewById(R.id.id_name)中的id_name。這些值可以在代碼中用android.R.id引用到 public.xml描述的是為attr、id、drawable所指定的一個32的id值,這個值在current.xml文件中會被用到。 當我們對public.xml做了改動後,執行make update-api命令,相應的current.xml就會添加這些改動。因為這些值按類型被放在不同的段上,類型相同的必須連續存放,不指定id值的話系統會自動計算出下一個值。 添加id的方法:1)在ids.xml中添加公共id項,在public.xml中也添加相應的id項。這種辦法沒有兼容性,會與後面的版本產生沖突。 2)在ids.xml中添加公共id項,每一項前面加一行的注釋,這樣就不用在public.xml中添加相應的項了。源碼中是/** @hide */的形式,這樣current中就不會有相應的段了。 3)在自己寫的xml中,使用android:id = "@+id/id_name"的形式,就和在eclipse中一樣,搜一下會發現android源碼中也有這么用的,這樣ids.xml和public.xml都不用改,兼容性我還不確定。 上面這些希望能對大家有所幫助吧。

『貳』 Ubuntu 10.10 下android 編譯環境搭建

1樓扯淡,你敢說windows下android和linux下編譯源碼出來的android沒多大差異?不怕雷劈么?
為什麼android是個開源OS?你在windows上開個源讓我看看?
csdn上有ubuntu 10.04下編譯2.3.3源碼的文章 我當時就是照那個做的,當然如果你對linux了解為0...那就沒辦法了

『叄』 開發和調試Android系統源碼,開發環境如何搭建!

在ubuntu下面編譯吧在eclipse下面沒法編譯framework層的東西的 這些都是打包成jar的 而且有關聯性如果是僅僅調試 倒是的確可以用eclipse但是需要你手機上面的system.img的編譯源碼和你導入的源碼是一樣的 否則會出現錯位甚至eclipse檔掉

『肆』 自己可以編譯安卓源碼嗎

用最新的Ubuntu 16.04,請首先確保自己已經安裝了Git.沒安裝的同學可以通過以下命令進行安裝:

sudo apt-get install git git config –global user.email 「[email protected]」 git config –global user.name 「test」

其中[email protected]為你自己的郵箱.

簡要說明

android源碼編譯的四個流程:1.源碼下載;2.構建編譯環境;3.編譯源碼;4運行.下文也將按照該流程講述.

源碼下載

由於某牆的原因,這里我們採用國內的鏡像源進行下載.
目前,可用的鏡像源一般是科大和清華的,具體使用差不多,這里我選擇清華大學鏡像進行說明.(參考:科大源,清華源)

repo工具下載及安裝

通過執行以下命令實現repo工具的下載和安裝

mkdir ~/binPATH=~/bin:$PATHcurl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repochmod a+x ~/bin/repo

補充說明
這里,我來簡單的介紹下repo工具,我們知道AOSP項目由不同的子項目組成,為了方便進行管理,Google採用Git對AOSP項目進行多倉庫管理.在聊repo工具之前,我先帶你來聊聊多倉庫項目:

我們有個非常龐大的項目Pre,該項目由很多個子項目R1,R2,...Rn等組成,為了方便管理和協同開發,我們為每個子項目創立自己的倉庫,整個項目的結構如下:


這里寫圖片描述

執行完該命令後,再使用make命令繼續編譯.某些情況下,當你執行jack-admin kill-server時可能提示你命令不存在,此時去你去out/host/linux-x86/bin/目錄下會發現不存在jack-admin文件.如果我是你,我就會重新repo sync下,然後從頭來過.

錯誤三:使用emulator時,虛擬機停在黑屏界面,點擊無任何響應.此時,可能是kerner內核問題,解決方法如下:
執行如下命令:

  • ./out/host/linux-x86/bin/emulator -partition-size 1024 -kernel ./prebuilts/qemu-kernel/arm/kernel-qemu-armv7

  • 通過使用kernel-qemu-armv7內核 解決模擬器等待黑屏問題.而-partition-size 1024 則是解決警告: system partion siez adjusted to match image file (163 MB >66 MB)

    如果你一開始編譯的版本是aosp_arm-eng,使用上述命令仍然不能解決等待黑屏問題時,不妨編譯aosp_arm64-eng試試.

    結束吧

    到現在為止,你已經了解了整個android編譯的流程.除此之外,我也簡單的說明android源碼的多倉庫管理機制.下面,不妨自己動手嘗試一下.

    『伍』 怎樣搭建android開發環境

    1、首先我們在搭建 Android 開發環境之前,需要一個集成的開發環境,一個是 SDK,一個是模擬器。因為編程使用的是java語言,還需要JDK。Java開發環境具 體搭建方法請參照:

    http://www.pc6.com/infoview/Article_53515.html

    2、開發集成環境選擇eclipse(集成版)

    軟體名稱: Eclipse SDK(跨平台集成開發環境)V3.6.7(x64)

    軟體大小: 174.3M

    下載地址: http://www.pc6.com/softview/SoftView_52899.html

    3、開發安卓用的插件是ADT,它可以幫助我們完成創建項目,向模擬器部署並運 行程序,調試程序等工作。

    4、安裝ADT的方法如下:

    (1)啟動eclipse,選擇菜單中的Help -> Software Updates

    至此為止,Android的安裝環境就全部搭建完畢了

    『陸』 手機android開發環境該如何搭建

    1. 下載jdk,

    2. 配置jdk環境變數

    3. 下載android studio,可選擇附帶下載sdk(也可自行下載)

    4. 配置sdk環境變數。

    5. 打開android studio,新建項目完成helloword第一個項目的創建。

    『柒』 如何編譯android手機源碼

    編譯android系統源碼准備工作:
    下載android源碼
    在windows上用gitbash ,git clone 下載代碼
    在linux上這樣下載
    創建~/bin目錄,用來存放repo程序,如下:

    $ cd ~
    $ mkdir bin
    初始化repo
    repo是android對git的一個封裝,簡化了一些git的操作。
    創建工程目錄:
    $ mkdir android
    $ cd android
    下載repo腳本並使其可執行:
    $ curl http://android.git.kernel.org/repo >~/bin/repo
    $ chmod a+x ~/bin/repo
    repo初始化:
    $ repo init -u git://android.git.kernel.org/platform/manifest.git
    在此過程中需要輸入名字和email地址。初始化成功後,會顯示:
    repo initialized in /android
    在~/android下會有一個.repo的隱藏目錄。
    5)同步源代碼
    $ repo sync
    這一步要很久很久。
    安裝linux系統,推薦ubuntu,圖形界面
    安裝編譯需要的支持包
    $ sudo apt-get install git-core gnupg sun-java5-jdk flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev
    安裝java6.0
    $ sudo apt-get install sun-java6-jdk
    配置java環境
    sudo gedit ~/.bashrc

    末尾加上

    JAVA_HOME=/usr/lib/jvm/java-6-sun
    JRE_HOME=${JAVA_HOME}/jre
    export ANDROID_JAVA_HOME=$JAVA_HOME
    export CLASSPATH=.:${JAVA_HOME}/lib:$JRE_HOME/lib:$CLASSPATH
    export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
    export JAVA_HOME;
    export JRE_HOME;
    export CLASSPATH;
    HOME_BIN=~/bin/
    export PATH=${PATH}:${JAVA_PATH}:${HOME_BIN};
    sudo source ~/.bashrc
    是環境變數生效

    編譯android源碼,並得到~/android/out目錄

    $ cd ~/andoird
    $ make
    這一過程很久。
    這就編譯結束了

    『捌』 如何搭建android運行環境

    1.Android運行環境的搭建

    進行安卓系統的軟體設計,那麼JDK的開發環境搭建必須是首要的。我們選擇Windows10 64位操作系統。同時在JDK版本的選擇中選用Windows x64版本的Java SE Development Kit 8u5,該版本穩定,應用廣泛而且開源免費,獲取方便。在安裝的過程中要注意不要重復安裝,應安裝完畢後立即刪除安裝包,否則如果不小心再次點到安裝包,該安裝包會立刻刪除所安裝的程序並詢問是否重新安裝。在JDK的安裝過程中,要注意開發工具,源代碼,公共JRE三項都要選中,而且要安裝到C盤默認目錄下,同時將其附帶的JRE同樣安裝到相同目錄下,同時硬碟至少應該留有2G的空間。

    選擇好JDK的版本並進行安裝後,我們的JAVA環境就安裝好了,眾所周知,安卓系統是由JAVA語言架構的,所以在搭建安卓運行環境之前必須要先安裝JAVA環境。安裝完JAVA環境之後,我們進行安卓開發環境的搭建。我們就要進行Android SDK版本的選擇。我們這里選擇android-sdk_r24.4.1-windows版本。這個版本是與安卓8.0同時發布的,同時它的發布時間也在我們的安卓測試機紅米NOTE5A型號之後,可以完美兼容我們的安卓測試機所運行的安卓7.1.2版本。

    5. 總結

    本次主要介紹了系統軟體環境的搭建與生成,從Android運行環境的搭建,Windows系統環境變數設置,Android SDK的配置, SDK介面和APK生成幾個方面分別介紹了具體步驟,讓我們了解了本文安卓系統軟體開發的環境配置。

    以上就是安卓環境和下載和安裝啦,按步驟來操作對小白來說也是相對簡單的,只要注意一些文中說明的細節,現在就開始行動起來一起學unity吧。

    『玖』 windows下如何編譯android源碼

    如果沒記錯,windows下是沒法編譯android框架源代碼的

    因為android是基於linux平台的,因此底層的很多東西都是基於linux系統的

    如果只是單純的android應用程序,則可以在windows下開發編譯

    只需要用Eclipse的adt插件加上windows下開發的Android SDK就行了。

    『拾』 如何搭建android源碼編譯環境

    1
    編譯Android 源代碼,Android官方推薦64位的ubuntu系統,最好是10.04的,對於10.10、11.10、12.04版本的ubuntu系統也是可以,但是小編一直習慣使用10.04的,所以幾年來一直沿用至今

    請不要使用32位的Ubuntu系統,更不要使用10.04以下的ubuntu系統,不然編譯會出現很多都問題,會浪費更多的時間,有的比較難解決,對於新人來說,還不如重新安裝一個64位的ubuntu系統

    下面小編來說說怎麼樣查看當前安裝好的ubuntu系統是多少位的
    按照下圖所示的方法打開終端,然後輸入命令並執行 uname -ar,在最後輸出的信息中如果有amd64或者 x86_64 字樣,那麼就說明是64位的系統了,否則就是32位的系統了

    END
    安裝jdk
    1
    jdk的安裝,雖然Android官方還是有介紹,現在jdk的安裝已經不支持使用添加源,然後用命令安裝了,只能取java官網下載jdk,然後安裝,然後將jdk的路勁添加到環境變數中,具體的安裝和添加變數的方法,可以查看本文參考資料中的文檔介紹,這里就不過多說明了

    另外需說明的是,對於2.3版本以後的Android,需要使用jdk6,即jdk1.6,而不要使用jdk1.7的

    2
    對於安裝好的jdk,並且添加了環境變數,我們可以輸入並執行命令java -version 來查看jdk版本,若是有類似下面的信息輸入,那麼說明jdk安裝成功了

    END
    安裝編譯所需的工具
    1
    對於10.04的系統,我們只需要安裝下面這些軟體工具就可以了,直接復制到終端中,然後回車執行安裝就ok,安裝前保持電腦正常連接網路
    sudo apt-get install git-core gnupg flex bison gperf build-essential \
    zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs \
    x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev \
    libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown \
    libxml2-utils xsltproc

    2
    對於10.10的ubuntu系統,需要先安裝下面的工具軟體,直接輸入執行下面的命令就可以安裝:
    sudo apt-get install git-core gnupg flex bison gperf build-essential \
    zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs \
    x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev \
    libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown \
    libxml2-utils xsltproc

    3
    之後使用下面的命令做一個軟鏈接文件:
    sudo ln -s /usr/lib32/mesa/libGL.so.1 /usr/lib32/mesa/libGL.so

    4
    對於11.10的ubuntu系統,需要先安裝下面的工具,輸入並執行下面的命令:
    sudo apt-get install git-core gnupg flex bison gperf build-essential \
    zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs \
    x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev \
    libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown \
    libxml2-utils xsltproc

    5
    然後再安裝這個對於11.10系統特別需要的工具
    sudo apt-get install libx11-dev:i386

    END
    設置高速緩存加快編譯速度
    設置告訴緩存可以加快我們的編譯速度,對於配置不是很高的電腦,最好是進行這個設置,這樣可以為我們節約很多都時間

    先用vi或者gedit軟體打開宿主目錄下的.bashrc文件,然後在文件的最後添加:
    export USE_CCACHE=1
    之後保存退出,重新登陸系統,使設置生效

    在終端中,切換到源碼根目錄中,然後執行下面的命令,設置ccache的大小
    prebuilts/misc/linux-x86/ccache/ccache -M 50G

    其實ccache就是一個執行文件,後面的-M和50G是傳遞給ccache的參數,表示設置50G的緩存空間,這個大小可以根據我們的時間需要來修改

    熱點內容
    體檢中心的無線網密碼多少 發布:2025-02-09 05:40:15 瀏覽:515
    腳本語言是編譯還是解釋 發布:2025-02-09 05:30:24 瀏覽:642
    天墓密碼結局是什麼 發布:2025-02-09 05:25:52 瀏覽:437
    如何找回網際網路帳號的密碼 發布:2025-02-09 05:20:05 瀏覽:373
    樹莓派源碼 發布:2025-02-09 05:07:00 瀏覽:651
    安卓手機為什麼搜不到懂球帝 發布:2025-02-09 05:04:42 瀏覽:817
    生命密碼解讀走什麼 發布:2025-02-09 04:55:51 瀏覽:279
    python常用正則表達式 發布:2025-02-09 04:42:53 瀏覽:179
    機器人編程培訓哪家好 發布:2025-02-09 04:37:44 瀏覽:308
    上海怎麼學習java 發布:2025-02-09 04:26:39 瀏覽:23