當前位置:首頁 » 編程軟體 » 編譯安卓100

編譯安卓100

發布時間: 2022-12-09 10:29:49

Ⅰ 用ubuntu虛擬機編譯android5.1要多久

vmware workstation 10
ubuntu-10.04.4-desktop-amd64.iso
1
ubuntu的安裝,打開vmware workstation 10,點創建新的虛擬機
2
點下一步
3
選擇下載的UBANTU光碟ISO文件,點下一步
4
設置Ubantu名稱及登錄用戶名及密碼,點下一步
5
設置虛擬機文件名稱及保存在磁碟上的位置,點下一步
6
設置虛擬機使用磁碟大小,若要編譯ANDROID,至少設置40GB,這里設置200GB保證足夠夠用
7
至此主要的設置都完成了,直接點擊完成即可。也可點擊自定義硬體進行詳細的設置,我們點自定義硬體,來設置內存
8
把虛擬機內存設置成實體機內存的一般大小,以保證安裝Ubantu的時候,速度不會卡,這里我設置成4GB,其它保持默認即可。設置完後點擊關閉。這個我們可以在任何時候配置硬體,甚至可以在UBANTU安裝完成之後再重新編輯硬體設置,只需點下圖的編輯虛擬機設置
9
配置完成,下面才是真正開始安裝,點擊開啟此虛擬機UBANTU即開始自動安裝,全程自動,無人值守
10
初始化安裝
11
安裝中 ,5%
12
安裝中 ,50%
13
安裝中 ,79%
14
安裝中 ,100%
15
安裝完成就開始自動安裝VMware Tools,這VMware Tools不屬於Ubantu操作系統,只是VMware公司方便主操作系統與客戶操作系統交互而提供的一個工具軟體
16
安裝完成,自動重啟,顯示登陸界面,點擊輸入前面設置的密碼登錄
17
登陸完成,安裝成功!!!
END
1
下面對UBANTU進行一些設置,以符合我們的工作習慣
修改默認顯示解析度,選擇System--->Preference--->monitors,修改顯示解析度為1280x800
2
修改待機屏幕保護及鎖屏時間,選擇System--->Preference--->screensaver,,去掉屏幕保護程序激活時鎖屏,免得安裝軟體時或編譯時總要輸入密碼才能登入系統
3
編輯虛擬機硬體設置,修改客戶機時間與主機時間同步
4
調出我的電腦、網上鄰居、我的文檔、回收站等圖標
按鍵盤的Alt 和 F2,打開 Run Application程序,輸入gconf-editor,然後Run打開Configuration Editor,選擇apps--->nautilus--->desktop,如圖所示框選相應選項即可
5
將終端放置在桌面和上面板上,以方便我們點擊調用,如圖所示
6
安裝右鍵調用終端工具,通常點擊右鍵,右鍵菜單沒有open in terminal右鍵打開終端工具
輸入sudo apt-get install nautilus-open-terminal命令,安裝右鍵打開終端工具
7
修改操作系統界面為中文,選擇System--->admininstration--->langunge support,如圖設置安裝中文語言包,經試驗安裝中文語言包極其緩慢,需要更新源,下一節會講到
8
設置虛擬機系統與主機系統共享文件夾,方法很多,
1.主機讀取虛擬客戶機共享出來的文件夾
2.虛擬客戶機讀取主機共享出來的文件夾
後面我會花時間專門一節講解虛擬機系統與主機文件夾共享的各種方法
END
本經驗是由本人親自測試編寫,圖片文字全部為原創,網路經驗首發,未經許可,謝絕轉載!
如果覺得本人的經驗對你有幫助,請點擊支持,謝謝!
換一批相關經驗
android4.4源碼編譯環境搭建72014.06.26
android開發環境之虛擬機搭建72014.04.30
Ubuntu10.04搭建MTK android編譯環境02014.04.06
android學習1-虛擬機的搭建02015.01.15
android學習2-虛擬機設置成漢語02015.01.16
相關標簽 android 虛擬機
©2015Bai 使用網路前必讀 網路經驗協議 作者創作作品協議

Ⅱ 如何編譯framework-res.apk修改圖標文件100%不會無限重啟

首先,我們要知道"framework-res.apk"是不可以重簽名的!(我們要切記這一點)另外,修改"framework-res.apk"之前務必先做好備份!這是相當重要的文件,稍有出錯都會令你進不了系統的!

這就是為什麼好多朋友編譯了framework-res.apk 後自動重啟 並且無限重啟的原因 因為你只是替換 而不是編譯 步驟走少了 所以也就出錯了

需要的環境
JDK 這個不需要我解釋吧?
懂得編譯的都知道 安卓是在java的環境開發 那麼你要編譯一個程序 必然不能離開JAVA

下面教大家如何搭建JAVA環境
1.安裝JDK
雙擊打開剛剛下載的JDK安裝包,安裝目錄可以為任意,只要你記著就好,當然,C盤是比較好,但由於銘心也是一名程序員,裝了比較多開發相關的軟體及環境,因此裝在D盤

2.JAVA環境變數配置
安裝好JDK後,找到我的電腦,按右鍵,點屬性選項, 按高級選項卡,點擊環境變數
Win7或vista為:計算機-屬性-高級系統設置-高級-環境變數

然後再用戶變數那裡新建3個環境變數
CLASSPATH : %JAVA_HOME%\lib;
JAVA_HOME:JDK安裝路徑\jdk1.6.0_18(安裝路徑就是你安裝JDK的位置)
PATH: %JAVA_HOME%\bin;
點擊確定退出編輯界面,再點擊確定,退出環境變數界面

3.驗證JDK和環境變數
這時按住鍵盤上win鍵(windows圖案按鈕)+R,打開運行,鍵入CMD
接著,看到黑色背景白色字的命令行界面,再鍵入:java –version(注意有一個空格)
若你看到以下內容,表明你JDK和環境變數配置成功,否則,請從第三步從新開始
java version "1.6.0_18"
java<TM> SE Runtime Environment <build 1.6.0_18-b07>
java HotSpot<TM> Client VM <bulid 16.0-b13, mixed mode, sharing>

確定以上步驟沒錯就可以開始下面的步驟了(一定要確定是否無錯 不然下面的步驟無法進行)

先下載我們的重要工具:apktool(帖子最下)
這是一個編譯,反編譯工具
此工具雖然操作會不如其他某些編譯工具簡單,但是修改框架文件,推薦使用這個!!!

接著我們就要進行提取framework文件了,用RE瀏覽器打開目錄/system/framework下,就會看到有"framework-res.apk"的文件了,直接把他復制到內存卡,然後放到電腦上准備對它進行開刀解剖!(當然,手機必須是已經Root了)

用apktool反編譯"framework-res.apk"
為了方便,建議先把這文件重命名為「f.apk」,在D盤根目錄下建立一個apktool的文件夾,把解壓好的APKTool.zip裡面的三個文件以及「f.apk」一齊放到D:\apktool中
也就是說 你的D盤apktool文件夾裡面有4個文件!!!

然後打開DOS界面 就是開始-運行-cmd
接著輸入以下代碼(一個都不要錯 不然無法編譯)
01 D:
02 cd apktool
03 apktool if f.apk
04 apktool d f.apk f
PS:d 是反編譯命令 後面的f表示生成文件名為f的文件夾(有的framework-res.apk文件無法編譯 如果你看到出現一大串英文 並且後面都顯示Unknown source 那麼說明你的framework-res.apk無法編譯 只有換一個)

接下來 窗口別關 還用得上

這時 你的D:\apktoo目錄下就會多出一個名為f的文件夾,裡面放著就是反編譯出來的文件了

接下來的東西一定要仔細 出錯就全盤白忙了

接下來把你要替換的圖標放到framework-res.apk 裡面的res文件夾里(用壓縮軟體打開後直接把你要替換的文件丟進去替換了就是)

替換完了過後接著在命令提示符裡面輸入代碼
apktool b f

重點又到了
這還沒結束 不是說你替換了 你就完事了 NO!!!!!!
先搞清楚,我們現在有兩個apk文件,一個是編譯前的f.apk,一個是編譯後的f2.apk。
用壓縮軟體同時打開f.apk,f2.apk,是打開,而不是解壓(成功編譯之後,f文件夾就會多了個dist的文件夾,裡面放的就是編譯好的文件,同樣命名為f.apk的,我們為了區分,先把他重命名為f2.apk


細心觀察,會發現編譯後的f2,少了一個META-INF的文件夾,這個其實就是apk包的簽名所在,但是這框架文件是不能簽名的,所以,我們才要進行下面的步驟
我們需要把兩類文件從f2.apk拉到f.apk中替換,
第一類是:剛才反編譯後,你所替換過,或者修改過的所有文件
第二類是:resources.arsc這一個文件
所有文件一個都不能替換少了
PS:記得要放到相同的目錄下哦!!
PSP:我們最後要的是f.apk這個文件!!!

替換好後,我們可以把f.apk重新命名為「framework-res.apk」,然後放回到內存卡上。
然後,用RE瀏覽器把「framework-res.apk」復制到/system目錄下,然後,長按文件名選擇許可權,具體許可權修改如下圖(RE管理器掛載為讀/寫)許可權設置211

修改好確定後,再把「framework-res.apk」剪切到/system/framework目錄下,選擇替換原文件,再次確認許可權是否有誤!
PS:一定要修改好許可權後才能放進/system/framework,不然系統會馬上掛掉的!!

最後就是重啟手機,一陣心跳過後,深呼吸一口氣,順利進入系統了!!!!

Ⅲ android10編譯硬體要求

您的開發編譯機必須達到或超出以下硬體要求:
如果是 Gingerbread (2.3.x) 及更高版本(包括 master 分支),需要使用 64 位環境。如果是較低的版本,則可以在 32 位系統中進行編譯。
如果是校驗代碼,至少需要 100GB 可用磁碟空間;如果要進行編譯,則還需要 150GB。如果要進行多次編譯或使用 ccache,則需要更多空間。
如果您在虛擬機中運行 linux,則至少需要 16GB 的 RAM/交換空間(swap)。

Ⅳ android 怎樣編譯kernel 命令 make

方法如下:
在Linux的環境下:
建立目錄:

mkdir ~/android-kernel cd android-kernel

下載源代碼, 大概有280MB, 慢慢等哈~~~ (當然你要先安裝git) git clone git://git.linuxtogo.org/home/groups/mobile-linux/kernel.git
類似的屏幕信息:
Initialized empty Git repository in /home/user/android-kernel/kernel/.git/ remote: Counting objects: 908251, done.
remote: Compressing objects: 100% (153970/153970), done.
remote: Total 908251 (delta 755115), reused 906063 (delta 753016) Receiving objects: 100% (908251/908251), 281.86 MiB | 292 KiB/s, done. Resolving deltas: 100% (755115/755115), done. Checking out files: 100% (22584/22584), done.
然後去到htc-msm branch: cd kernel
git checkout -b htc-msm origin/htc-msm
屏幕信息:
Branch htc-msm set up to track remote branch refs/remotes/origin/htc-msm. Switched to a new branch "htc-msm"

下載ARM的toolchain, 大概64MB左右, 下到~/android-kernel: 下

:
http://www.codesourcery.com/gnu_toolchains/arm/portal/package2549/public/arm-none-linux-gnueabi/arm-2008q1-126-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2

cd ~/android-kernel
tar xjf arm-2008q1-126-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
編譯kernel

准備預設的Kaiser 配置文件.config
cd ~/android-kernel/kernel

make htckaiser_defconfig ARCH=arm
然後編譯zImage:
export PATH=~/android-kernel/arm-2008q1/bin:$PATH
make zImage ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-
編譯好的在: ~/android-kernel/kernel/arch/arm/boot/zImage

如果你的機器是多核的, 可以編譯的時候用-j <cores/cpus_number>來加速:
比如, 雙核的可以:
make -j 2 zImage ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi
滿意請採納謝謝

Ⅳ 安卓源碼編譯後 模擬器啟動不起來

直接用逍遙安卓試試

Ⅵ 如何編譯android kernel

1.准備工作: (ubuntu1110 32位)
ubuntu等linuxOS,下載好eclipse,安裝好JDK, 安裝好android的SDK, 在eclipse中成功打開android 手機模擬器即OK。

2.初始化編譯環境 :
關注該網頁上的「installing required packages」,其中有的軟體包因為版本問題而安裝不上,不用管它,之後遇到錯誤再單獨解決。

3.下載內核源碼:
android 2.3 內核 下載需要等待一段時間。

4.下載交叉編譯器:
該步驟有可能耗費大量時間,依據網速不同,幾個小時到幾天不等,或許可以嘗試git clone 後面的地址只下載prebuilt/linux-x86/toolchain

5.設置參數以及編譯:
$ export ARCH=arm
$ export SUBARCH=arm
$ export CROSS_COMPILE=arm-eabi-
$ cd goldfish // 進入下載的源代碼目錄
$ git checkout <commit_from_first_step> //這個步驟我沒有做,不知道幹嘛用的
$ make goldfish_defconfig
$ make

6.報錯信息:
若有報錯說找不到 (arm-eabi-gcc command not found)等等,嘗試使用http://blog.csdn.net/davidbeckham2901/article/details/7397447 中說到的解決方案即可(即採用另外一個交叉編譯器)。

7.測試:

最後,測試一下剛才編譯的內核:emulator -avd myavd -kernel ~/goldfish/arch/arm/boot/zImageemulator若系統找不到,可以去android SDK中某文件夾找到,加入系統PATH即可。 -avd後面的參數 myavd即為模擬器的名字,這個我是在eclipse中的模擬器管理中新建的一個模擬器,用那個模擬器的名字即可。 -kernel後面的參數就找到剛才編譯出的內核的路徑。
若啟動模擬器失敗,可嘗試關閉後再啟動。第一次啟動模擬器時可能需要等待比較長的時間,3分鍾到15分鍾不等。

Ⅶ 自己可以編譯安卓源碼嗎

用最新的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源碼的多倉庫管理機制.下面,不妨自己動手嘗試一下.

    Ⅷ apk改之理1g編譯多久

    首先通過搜索有關Android-Studio 編譯耗時(好久、太長)問題的博客,速度確實有所改善。

    一、暫時解決 Android-Studio 編譯耗時(好久、太長)問題

    簡單描述一下我遇到的問題

    2017年10月24日下午6點之前我的 android studio 編譯器還是瞬間編譯,但是之後我遇到的問題就讓「怒發沖冠」,從6點到晚上10點從gradle的初始化編譯到apk編譯,我一共執行了3次,分別是2小時、48分鍾、20分鍾,一晚上好像什麼都沒干。雖然是在加班,但是這樣不太好!這么耗時,腫么辦!然後在網上針對我的情況了解了一下,找到了一個適合我的,但是也不是長久的 解決問題,作為臨時的解決方法。針對我的問題首先表明一下問題的所在:

    Project 下的 gradle.properties

    在你的電腦所能承受的范圍內,盡量的把 org.gradle.jvmargs 她的值設置更大,這樣運行編譯的時候我們的 android studio 就會擁有足夠的編譯內存空間。Offline work然後就是開啟離線的代碼編譯模式。我們都知道,我們自己寫的項目會依賴很多的第三方類庫,有的是你每次進行項目的編譯,她都會進行檢測更新最新版本。這樣導致你的編譯器無論是在初次打開項目環境的初始化,或是運行項目編譯,都會非常的慢。但是,請注意,如果是在我們已經完全初始化過了項目所需要的依賴內容。這時候,我們就可以開啟「離線」代碼編譯模式。如此,android studio 就不會再到互聯網上檢測我們的依賴環境-或更新了。可以節約很多時間,具體操作設置請看

    但是有一點要注意:如果有新的項目代碼依賴,要關閉離線模式,進行在線代碼環境初始化,之後再次開啟就-ok

    ————————————————

    三、Gradle開啟daemon特性

    1.配置Daemon,能夠加速gradle的構建,為了獲取這個性能提上,准備開啟

    可以同過添加gradle.properties文件來給Gradle添加一些附加配置

    Windows下:

    (window)/Users/」your pc_name」/.gradle

    Linux下:(在home/${user}目錄下創建gradle.properties)

    touch ~/.gradle/gradle.properties && echo "org.gradle.daemon=true" >> ~/.gradle/gradle.properties

    2 . Gradel Daemon將在Gradle3.0+的版本中默認開啟

    也可以在項目的gradle.properties中添加:

    org.gradle.daemon = true

    當你項目中有多個子mole時,這個配置顯得尤為重要,同樣可以在項目的gradle.properties中添加:

    org.gradle.parallel = true

    還有一種方法,在運行時加上參數即可:

    例如,運行build任務

    gradle build --daemon

    原文鏈接:https://blog.csdn.net/lsziri/article/details/62883454

    通過以上對比,排除使用第三方插件(包括收費),比較可靠的方案還是在如下方法:

    1.修改C:Users{用戶名}.gradle下創建gradle.properties文件(即項目文件gradle.properties)

    ## For more details on how to configure your build environment visit

    # http://www.gradle.org/docs/current/userguide/build_environment.html

    #

    # Specifies the JVM arguments used for the daemon process.

    # The setting is particularly useful for tweaking memory settings.

    # Default value: -Xmx1024m -XX:MaxPermSize=256m

    # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

    org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

    #注意這個-Xmx後的參數大少根據實際計算機內存配置進行相應修改,當然開發電腦配置不能太低,多核,大內存8G及其以上是首選,

    #

    # When configured, Gradle will run in incubating parallel mode.

    # This option should only be used with decoupled projects. More details, visit

    # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects

    #並行編譯

    org.gradle.parallel=true#守護進程

    org.gradle.daemon=true#開啟孵化模式

    org.gradle.configureondemand=true

    #開啟緩存android.enableBuildCache=true

    #Tue Apr 23 03:16:33 CST 2019

    systemProp.http.proxyHost=mirrors.neusoft.e.cn

    systemProp.http.proxyPort=80

    2.首次需要在線下載相關庫及工具外,一般進行離線編譯可極大提高開發效率

    打開Android Studio,選擇菜單項 File->Settings,把 Offline Work打上勾。

    .png

    最後,保存,並重新打開Android Studio.你現在Gradle應該有了很大的提升。

    相關資源:關於提升android編譯速度到半小時編譯完成_android源碼編譯加速...
    打開CSDN,閱讀體驗更佳

    OpenCV源碼Android端編譯,用時三天,我編了個寂寞。。。_Vaccae的博客-C...
    編譯過OpenCV源碼的應該都知道,把OpenCV_world編譯打勾後,會直接把所有的東西都打包時這個動態庫里,不需要更多的文件了,本身我在Android使用OpenCV也都是用ndk的方式直接調動態庫使用,所以就想到了按這個方式直接生成一個opencv_world得了。
    繼續訪問
    Android系統編譯源碼遇到的問題和優化編譯時間 - CSDN博客
    這里以我自身最近遇到的問題,對遇到的編譯源碼進入的誤區和編譯之中遇到的問題,做一個總結,希望有人遇到相同的問題可以借鑒,以及自己做一個記錄。 問題一: 關於放置系統源碼硬碟的類型,不要用ntfs,要用與所用Ubuntu系統兼容的ext4. 因...
    繼續訪問
    簡訴android源代碼編譯過程,Android源碼編譯過程詳述
    說一下Android源碼的編譯,這個困擾了我粉久的問題,在網上隨便搜一下Android源碼編譯,都能搜出很多結果,但在這里我得告訴你,別太 樂觀,沒有一個網頁能讓你順順利利的按照步驟,編譯出最後的img的。我在這里盡量把我所遇到的問題、及解決辦法告訴大家,我自認編譯Android所能 遇到的問題,我都遇到了,所以應該是一個比較全的編譯指南,有不對的地方歡迎指教。首先說一下,編譯Android所用的...
    繼續訪問
    自己動手編譯最新Android源碼及SDK
    在Android Studio代碼調試一文中,簡單的介紹了代碼調試的一些技巧.現在我們來談談android源碼編譯的一些事.(俺認為,作為android developer人人都應該有一份自己Android源碼,這樣我們就可以隨時對自己有疑惑的地方通過親手調試來加強理解). 本文適用於Ubuntu 16.04上編譯Android 6.0.*,其他情況請酌情處理,自行參考官網吧. 請首先
    繼續訪問
    自己動手編譯Android源碼(超詳細)_Android-Alvin的博客
    android源碼編譯的四個流程: 1.源碼下載; 2.構建編譯環境; 3.編譯源碼;4運行.下文也將按照該流程講述. 源碼下載 由於某牆的原因,這里我們採用國內的鏡像源進行下載. 目前,可用的鏡像源一般是科大和清華的,具體使用差不多,這里我選擇...
    繼續訪問
    1. 編譯安卓源碼(AOSP)10.0.0
    目錄 環境配置&下載源碼 編譯 刷入手機 環境配置&下載源碼 首先創建一個ubuntu18的虛擬機。 本文使用的鏡像是: 更改apt源為國內源 sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak sudo vi /etc/apt/sources.list #添加阿里源 deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted univ...
    繼續訪問

    熱門推薦 [Android 編譯(一)] Ubuntu 16.04 LTS 成功編譯 Android 6.0 源碼教程
    1 前言經過3天奮戰,終於在Ubuntu 16.04上把Android 6.0的源碼編譯出來了,各種配置,各種error,各種爬坑,特寫此博客記錄爬坑經歷。先上圖,Ubuntu上編譯完後成功運行模擬器,如圖:2 編譯環境 UbuntuKylin 16.04 LTS Android 6.0_r1 Open JDK 7 3 准備工作(1) 下載Android 6.0源碼. Androdi 6.0源
    繼續訪問
    學習AOSP安卓系統源代碼,需要什麼樣的電腦?不同配置的電腦,其編譯時間有多大差距?
    俗話說得好,工欲善其事必先利其器!有一台自己的編譯伺服器是每個學習AOSP 安卓系統源代碼人的夢想,然而需要什麼樣的配置呢?下面是我當前在用的3個平台的核心配置,可供大家參考。不同配置的電腦,其編譯時間有多大差距?本文提供3款典型配置,讓你一目瞭然。
    繼續訪問

    編譯android源碼 太慢,記編譯Android源碼的經歷
    8種機械鍵盤軸體對比本人程序員,要買一個寫代碼的鍵盤,請問紅軸和茶軸怎麼選?由於之前的渣本試過一次裸ubuntu編譯Android源碼,一次則用虛擬機。過程中參考了官網/網路博客的教程,失敗了好幾次,也成功了兩次。上一次買了個稍微好一點的筆記本,也裸ubuntu編譯過一次7.0的源碼,後面因為其他工作的需求,暫且換成window系統,再一次重新折騰編譯源碼。整理下之前的筆記及參考資料,寫下記錄供...
    繼續訪問

    android編譯很慢,Android Studio編譯很慢該怎麼辦
    我們使用電腦和手機時候最不能忍受就是設備又卡又慢了,嚴重影響我們工作或者游戲體驗。在windows系統中Android Studio編譯速度很慢,該怎麼解決呢?下面我們就來看看詳細的教程,需要的朋友可以參考下方法步驟1、可以看到未設置前的編譯速度是30秒左右2、右鍵計算機選擇屬性3、進入高級系統設置4、高級-性能-設置5、然後再進入高級那一欄,將"程序"切換為"後台服務"6、完成,編譯時間降為15...
    繼續訪問

    Android內核編譯
    Android內核的編譯需要是Mac或者ubuntu系統,centos和windows系統是不行的,磁碟需要不低於170G,如果磁碟太小編譯不過,引發異常而導致中斷。如果是使用的是MacOS,必須在要重新劃分磁碟分區,以區分大小寫,原有的磁碟不區分大小寫,沒法編譯軟體,另外換需要下載Xcode環境,配置比較麻煩, 內存下載也比較慢,很需要硬碟空間。所以我使用的是ubuntu系統統,很曲折,我執行的時候由於申請總磁碟300G,但是執行目錄才100G,有沒掛載其他硬碟,文件夾運行的磁碟剩餘空間太...
    繼續訪問

    編譯Android系統源碼
    步驟: 1:下載源碼 2:搭建編譯環境 3:編譯( 一定要等源碼下載完整再編譯) 硬體軟體要求 官方文檔:https://source.android.google.cn/setup/build/requirements 硬體要求: 如果是 Android 2.3.x (Gingerbread) 及更高版本(......
    三、Gradle開啟daemon特性

    1.配置Daemon,能夠加速gradle的構建,為了獲取這個性能提上,准備開啟

    可以同過添加gradle.properties文件來給Gradle添加一些附加配置

    Windows下:

    (window)/Users/」your pc_name」/.gradle

    Linux下:(在home/${user}目錄下創建gradle.properties)

    touch ~/.gradle/gradle.properties && echo "org.gradle.daemon=true" >>~/.gradle/gradle.properties

    2 . Gradel Daemon將在Gradle3.0+的版本中默認開啟

    也可以在項目的gradle.properties中添加:

    org.gradle.daemon = true

    當你項目中有多個子mole時,這個配置顯得尤為重要,同樣可以在項目的gradle.properties中添加:

    org.gradle.parallel = true

    還有一種方法,在運行時加上參數即可:

    例如,運行build任務gradle build --daemon

    原文鏈接:https://blog.csdn.net/lsziri/article/details/62883454

    通過以上對比,排除使用第三方插件(包括收費),比較可靠的方案還是在如下方法:

    1.修改C:Users{用戶名}.gradle下創建gradle.properties文件(即項目文件gradle.properties)

    ## For more details on how to configure your build environment visit

    # http://www.gradle.org/docs/current/userguide/build_environment.html

    #

    # Specifies the JVM argumentsused for the daemon process.

    # The setting is particularly useful for tweaking memory settings.

    # Default value: -Xmx1024m -XX:MaxPermSize=256m

    # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

    org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

    #注意這個-Xmx後的參數大少根據實際計算機內存配置進行相應修改,當然開發電腦配置不能太低,多核,大內存8G及其以上是首選,

    #

    # When configured, Gradle will run in incubating parallel mode.

    # This option should only be used with decoupled projects. More details, visit

    # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects

    #並行編譯

    org.gradle.parallel=true#守護進程

    org.gradle.daemon=true#開啟孵化模式

    org.gradle.configureondemand=true

    #開啟緩存android.enableBuildCache=true

    #Tue Apr 23 03:16:33 CST 2019

    systemProp.http.proxyHost=mirrors.neusoft.e.cn

    systemProp.http.proxyPort=80

    2.首次需要在線下載相關庫及工具外,一般進行離線編譯可極大提高開發效率

    打開Android Studio,選擇菜單項 File->Settings,把 Offline Work打上勾。

    .png

    最後,保存,並重新打開Android Studio.你現在Gradle應該有了很大的提升。

    相關資源:關於提升android編譯速度到半小時編譯完成_android源碼編譯加速...
    打開CSDN,閱讀體驗更佳

    OpenCV源碼Android端編譯,用時三天,我編了個寂寞。。。_Vaccae的博客-C...
    編譯過OpenCV源碼的應該都知道,把OpenCV_world編譯打勾後,會直接把所有的東西都打包時這個動態庫里,不需要更多的文件了,本身我在Android使用OpenCV也都是用ndk的方式直接調動態庫使用,所以就想到了按這個方式直接生成一個opencv_world得了。
    繼續訪問
    Android系統編譯源碼遇到的問題和優化編譯時間 - CSDN博客
    這里以我自身最近遇到的問題,對遇到的編譯源碼進入的誤區和編譯之中遇到的問題,做一個總結,希望有人遇到相同的問題可以借鑒,以及自己做一個記錄。 問題一: 關於放置系統源碼硬碟的類型,不要用ntfs,要用與所用Ubuntu系統兼容的ext4. 因...
    繼續訪問
    簡訴android源代碼編譯過程,Android源碼編譯過程詳述
    說一下Android源碼的編譯,這個困擾了我粉久的問題,在網上隨便搜一下Android源碼編譯,都能搜出很多結果,但在這里我得告訴你,別太 樂觀,沒有一個網頁能讓你順順利利的按照步驟,編譯出最後的img的。我在這里盡量把我所遇到的問題、及解決辦法告訴大家,我自認編譯Android所能 遇到的問題,我都遇到了,所以應該是一個比較全的編譯指南,有不對的地方歡迎指教。首先說一下,編譯Android所用的...
    繼續訪問
    自己動手編譯最新Android源碼及SDK
    在Android Studio代碼調試一文中,簡單的介紹了代碼調試的一些技巧.現在我們來談談android源碼編譯的一些事.(俺認為,作為android developer人人都應該有一份自己Android源碼,這樣我們就可以隨時對自己有疑惑的地方通過親手調試來加強理解). 本文適用於Ubuntu 16.04上編譯Android 6.0.*,其他情況請酌情處理,自行參考官網吧. 請首先
    繼續訪問
    自己動手編譯Android源碼(超詳細)_Android-Alvin的博客
    android源碼編譯的四個流程: 1.源碼下載; 2.構建編譯環境; 3.編譯源碼;4運行.下文也將按照該流程講述. 源碼下載 由於某牆的原因,這里我們採用國內的鏡像源進行下載. 目前,可用的鏡像源一般是科大和清華的,具體使用差不多,這里我選擇...
    繼續訪問
    1. 編譯安卓源碼(AOSP)10.0.0
    目錄 環境配置&下載源碼 編譯 刷入手機 環境配置&下載源碼 首先創建一個ubuntu18的虛擬機。 本文使用的鏡像是: 更改apt源為國內源 sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak sudo vi /etc/apt/sources.list #添加阿里源 deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted univ...
    繼續訪問

    熱門推薦 [Android 編譯(一)] Ubuntu 16.04 LTS 成功編譯 Android 6.0 源碼教程
    1 前言經過3天奮戰,終於在Ubuntu 16.04上把Android 6.0的源碼編譯出來了,各種配置,各種error,各種爬坑,特寫此博客記錄爬坑經歷。先上圖,Ubuntu上編譯完後成功運行模擬器,如圖:2 編譯環境 UbuntuKylin 16.04 LTS Android 6.0_r1 Open JDK 7 3 准備工作(1) 下載Android 6.0源碼. Androdi 6.0源
    繼續訪問
    學習AOSP安卓系統源代碼,需要什麼樣的電腦?不同配置的電腦,其編譯時間有多大差距?
    俗話說得好,工欲善其事必先利其器!有一台自己的編譯伺服器是每個學習AOSP 安卓系統源代碼人的夢想,然而需要什麼樣的配置呢?下面是我當前在用的3個平台的核心配置,可供大家參考。不同配置的電腦,其編譯時間有多大差距?本文提供3款典型配置,讓你一目瞭然。
    繼續訪問

    編譯android源碼 太慢,記編譯Android源碼的經歷
    8種機械鍵盤軸體對比本人程序員,要買一個寫代碼的鍵盤,請問紅軸和茶軸怎麼選?由於之前的渣本試過一次裸ubuntu編譯Android源碼,一次則用虛擬機。過程中參考了官網/網路博客的教程,失敗了好幾次,也成功了兩次。上一次買了個稍微好一點的筆記本,也裸ubuntu編譯過一次7.0的源碼,後面因為其他工作的需求,暫且換成window系統,再一次重新折騰編譯源碼。整理下之前的筆記及參考資料,寫下記錄供...
    繼續訪問

    android編譯很慢,Android Studio編譯很慢該怎麼辦
    我們使用電腦和手機時候最不能忍受就是設備又卡又慢了,嚴重影響我們工作或者游戲體驗。在windows系統中Android Studio編譯速度很慢,該怎麼解決呢?下面我們就來看看詳細的教程,需要的朋友可以參考下方法步驟1、可以看到未設置前的編譯速度是30秒左右2、右鍵計算機選擇屬性3、進入高級系統設置4、高級-性能-設置5、然後再進入高級那一欄,將"程序"切換為"後台服務"6、完成,編譯時間降為15...
    繼續訪問

    Android內核編譯
    Android內核的編譯需要是Mac或者ubuntu系統,centos和windows系統是不行的,磁碟需要不低於170G,如果磁碟太小編譯不過,引發異常而導致中斷。如果是使用的是MacOS,必須在要重新劃分磁碟分區,以區分大小寫,原有的磁碟不區分大小寫,沒法編譯軟體,另外換需要下載Xcode環境,配置比較麻煩, 內存下載也比較慢,很需要硬碟空間。所以我使用的是ubuntu系統統,很曲折,我執行的時候由於申請總磁碟300G,但是執行目錄才100G,有沒掛載其他硬碟,文件夾運行的磁碟剩餘空間太...
    繼續訪問

    編譯Android系統源碼
    步驟: 1:下載源碼 2:搭建編譯環境 3:編譯( 一定要等源碼下載完整再編譯) 硬體軟體要求 官方文檔:https://source.android.google.cn/setup/build/requirements 硬體要求: 如果是 Android 2.3.x (Gingerbread) 及更高版本(......
    繼續訪問

    android源碼編譯模塊慢,有贊Android秒級編譯優化實踐
    1. 有贊Android秒級編譯優化實踐有贊-明天2. ⽬目錄背景⽅方案調研有贊⽅方案實踐成果未來規劃3. 背景Android端現狀Kotlin33%客戶端PhonePad每周發版業務賬戶交易易商品45W庫存共26個⼦子業務模塊導購…⽉月均上線功能 50+Java67%4. 遇到的問題編譯時間1818團隊開發效率下降1513.512新⼈人⼊入⻔門成本提⾼高98不不利利於緊急問題修復4.502016...
    繼續訪問
    Android 4.4源碼編譯過程(包括SDK)
    Android源碼下載完後的目錄如下: 整個代碼的大小為:25.559GB。 一、構建系統 如下用於構建Android源碼樹的指令應用於所有的代碼分支,包括master分支。 1.選擇分支 構建系統的一些要求是由將要選擇編譯的源代碼的版本決定的。通過查看
    繼續訪問
    Android源碼編譯過程及刷機過程詳解
    本文將詳細介紹Android源碼編譯過程,以及編譯完成後如何進行刷機。
    繼續訪問
    Android studio編譯很久 Gradle Build Running特別慢問題解決
    運行項目,Gradle Build Running特別慢,慢到懷疑人生。那麼我們看下怎麼能提高效率..... 解決辦法如下: 在android studio的配置中,開啟offline模式,以及修改配置。實際上的配置和上面的一大段一樣,主要是在這個地方配置的只會在ide構建的時候生效,命令行構建不會生效 可以減少gradle build 的百分之九十的時間。 找到項目的gradle文件夾的wrapper文件夾里的gradle-wrapper.properties,改成本地已經..
    繼續訪問
    最新發布 解決AndroidStudio編譯工程長時間卡在Gradle:Build model問題
    最近兩天突然原來的Android工程都長時間編譯不過,最長一個編譯了1天3小時55分(瞬間崩潰了)。 嘗試新創建一個工程,編譯也要13分鍾。好像也沒幹啥,從gradle.properties 、build.gradle、升級gradle插件、升級Android studio和重新安裝、刪除gradle等等,一路各種排查試錯,也沒能解決,一度懷疑人生,沖動的想重裝電腦了(想想肯定跟這沒關系就忍住了)。 於是又繼續度娘,在看到關於Android Studio gradle:build model長期執行不完的問
    繼續訪問
    編譯android 源代碼 時間,Android編譯使用ccache減少編譯時間
    第1步:安裝ccache工具在Android源代碼目錄prebuilts/misc/linux-x86/ccache下面有ccache工具的源代碼包拷出來(建議根目錄),把它解壓,然後參考裡面的IN

    Ⅸ 怎麼使用Android源碼編譯c模塊生成可執行文件

    1. 在./development目錄下創建一目錄 如:myhello
    2. 進入hello目錄,在其下編寫自己的.c文件,如: myhello.c
    #include <stdio.h>
    int main()
    {
    printf("hello world\n");
    exit(0);
    //return 0;
    }
    3. 在hello目錄中,編寫Android.mk, 內容如下:
    LOCAL_PATH:= $(call my-dir)
    include $(CLEAR_VARS)
    LOCAL_MODULE := myhelloworld
    LOCAL_SRC_FILES := myhello.c
    LOCAL_MODULE_TAGS := optional
    include $(BUILD_EXECUTABLE)
    4. 回到Android源代碼頂層目錄,進行編譯,make myhelloworld
    5. 生成的可執行文件位於:out/target/proct/lotus/system/bin/ 目錄下
    6. adb push 到手機 /data 目錄下,然後進入adb shell,到data目錄下,執行./myhelloworld 皆可

    手動編譯連接【arm-eabi-gcc 的目錄隨andorid的版本而有變化,還有就是需要鏈接的文件如果比較多時,需要很多-l 就很麻煩了】
    7、編譯成目標文件:
    #$(yourAndroid)/prebuilt/linux-x86/toolchain/[arm-eabi-4.2.1]/bin/arm-eabi-gcc -I bionic/libc/arch-arm/include/ -I bionic/libc/include -I bionic/libc/kernel/common -I bionic/libc/kernel/arch-arm -g -c helloworld.c -o hello.o
    8、生成可執行代碼:
    #$(yourAndroid)/prebuilt/linux-x86/toolchain/[arm-eabi-4.2.1]/bin/arm-eabi-gcc -nostdlib -Bdynamic -Wl,-T,build/core/armelf.x -Wl,-dynamic-linker,/system/bin/linker -Wl,--gc-sections -Wl,-z,noreloc -o helloworld -Lout/target/proct/[generic]/obj/lib -Wl,-rpath-link=out/target/proct/[generic]/obj/lib -lc hello.o -entry=main

    其中[ ]中部分根據實際情況修改

    **************************************************
    實驗:
    1. 建目錄(my Android)/development/test, 在該目錄下新建 Android.mk和fb_test.c文件

    2. Android.mk文件

    LOCAL_PATH:= $(call my-dir)
    include $(CLEAR_VARS)
    LOCAL_MODULE := myfbtest
    LOCAL_SRC_FILES := fb_test.c
    LOCAL_MODULE_TAGS := optional
    include $(BUILD_EXECUTABLE)

    3. 以下為fb_test.c
    #include <fcntl.h>
    #include <linux/fb.h>
    #include <sys/mman.h>
    #include <linux/kd.h>

    #include <stdio.h>

    #define FBBIT_PER_PIXEL 32
    #define FBBIT_PIXEL_IMAGE 16
    #define PIXELS_WIDTH_BYTE 4
    #define BYTE_PER_PIXEL 3
    #define FB_GRAPHICS_PATH "/dev/graphics/fb0"
    #define DEV_TTY0_PATH "/dev/tty0"

    #define DISPLAY_ERROR -1
    #define DISPLAY_SUCCESS 0

    #define GET_BATTERYCAPACITY_ERR -1

    #define MAX_STR 255

    static struct {
    int fd;
    void *pixels;
    struct fb_fix_screeninfo fixed;
    struct fb_var_screeninfo var;
    int align_xres;
    } fb;

    int getBatteryCapacity(void)
    {
    FILE *in;
    char tmpStr[MAX_STR + 1];
    char capfile[] = "/sys/class/power_supply/battery/capacity";

    if (capfile == NULL)
    return GET_BATTERYCAPACITY_ERR;

    in = fopen(capfile, "rt");
    if (in == NULL)
    return GET_BATTERYCAPACITY_ERR;

    if (fgets(tmpStr, MAX_STR, in) == NULL) {
    printf("Failed to read battery capacity!\n");
    fclose(in);
    return GET_BATTERYCAPACITY_ERR;

    }

    printf("Battery capacity(ascii): %s\n", tmpStr);
    fclose(in);

    return 0;//atoi(tmpStr);
    }

    static int vt_set_graphicsmode(int graphics)
    {
    int fd, r;
    fd = open(DEV_TTY0_PATH, O_RDWR | O_SYNC);
    if (fd < 0)
    return DISPLAY_ERROR;
    r = ioctl(fd, KDSETMODE, graphics);
    close(fd);
    return r;
    }

    int display_init(void)
    {
    fb.fd = open(FB_GRAPHICS_PATH, O_RDWR);
    if (fb.fd < 0)
    return DISPLAY_ERROR;

    if (ioctl(fb.fd, FBIOGET_FSCREENINFO, &fb.fixed) < 0)
    return DISPLAY_ERROR;
    if (ioctl(fb.fd, FBIOGET_VSCREENINFO, &fb.var) < 0)
    return DISPLAY_ERROR;
    fb.align_xres = fb.fixed.line_length /
    (fb.var.bits_per_pixel >> BYTE_PER_PIXEL);

    fb.pixels = mmap(0, fb.fixed.line_length * fb.var.yres_virtual,
    PROT_READ | PROT_WRITE, MAP_SHARED, fb.fd, 0);
    if (fb.pixels == MAP_FAILED)
    return DISPLAY_ERROR;

    vt_set_graphicsmode(KD_GRAPHICS);

    memset(fb.pixels, 0, fb.fixed.line_length * fb.var.yres_virtual);
    //display_update(fb.pixels, fb.align_xres, fb.var.yres);
    fb.var.activate = FB_ACTIVATE_FORCE;
    ioctl(fb.fd, FBIOPUT_VSCREENINFO, &fb.var);

    printf("display_init ok\n");

    return DISPLAY_SUCCESS;
    }

    void display_on(void)
    {
    ioctl(fb.fd, FBIOBLANK, FB_BLANK_UNBLANK);
    }

    void display_off(void)
    {
    ioctl(fb.fd, FBIOBLANK, FB_BLANK_POWERDOWN);
    }

    int main()
    {
    display_init();
    display_off();//關顯示屏

    getBatteryCapacity();
    sleep(5);

    display_on();//開顯示屏

    return 0;
    }

    Ⅹ 編譯整個模塊的android源碼需要多大的空間

    預留100G或以上空間用於存放源碼及編譯產出,本人編譯的KitKat 源碼(帶.repo目錄)+編譯產出在80G左右

    熱點內容
    php手機社區源碼 發布:2024-04-20 23:13:09 瀏覽:656
    介紹高德地圖如何查看電腦配置 發布:2024-04-20 23:03:37 瀏覽:994
    演算法加運維 發布:2024-04-20 23:03:30 瀏覽:390
    android匹配 發布:2024-04-20 22:58:33 瀏覽:168
    string的長度java 發布:2024-04-20 22:46:20 瀏覽:136
    網易我的世界監獄風雲的伺服器 發布:2024-04-20 22:35:41 瀏覽:186
    linux服務自動重啟 發布:2024-04-20 22:34:54 瀏覽:962
    編譯器最後的結果 發布:2024-04-20 22:30:38 瀏覽:821
    安裝linuxoracle11g 發布:2024-04-20 22:29:02 瀏覽:533
    android設置權重 發布:2024-04-20 22:20:08 瀏覽:725