openjdkandroid
❶ openjdk platform怎麼禁用進程
打開任務管理器,關閉Openjdk-Platform-binary即可。
Android代碼在Windows的AndroidStudio運行時常會出現另一個程序正在使用此文件,進程無法訪問的錯誤,也可以用該方法來停止運行。
❷ android sdk 兼容openjdk嗎
android sdk 兼容openjdk的,谷歌退出的openidk能不兼容嗎,只不過現在還沒大量推廣而已。
❸ android 4.2.1 編譯到最後不能打包是怎麼回事
不知道你用的這個源碼是哪個公司的?
你現在是編譯出現錯誤還是打包出現的錯誤?
如果是全志的話
你編譯完了,打包直接在文件系統文件夾中用命令:pack
如果是編譯錯誤的話,可能是因為你的命令出錯了
你進入文件系統中,試試
source ./build/ensetup.sh ;
lunch ??? ???-->你要編譯的產品
extract-bsp
make -j4 第一次編譯還是開的線程少點比較好,因為在編譯target那一塊比較耗費內存!
祝你好運!
❹ 安卓開發換成了OpenJDK有什麼影響
Android從新版本操作系統開始將採用OpenJDK,這一舉措會帶來怎樣的影響,目前來說還難以進行全面的透徹分析,這很大程度上取決於Oracle與Google之間爭論不休的版權控訴將走向何方。目前為止,還沒有人能夠清楚地說明一個API介面是否能夠擁有版權信息,法律與法院必須明確地解答這一點。自從上一個現有版本的庫開始,Android中的部分代碼,包括Java與C在內就開始了重新構建工作,某些無用的代碼被刪除,但依然保留了介面或頭文件。那麼是不是說Android從此就可以擺脫那些麻煩了呢?這還有待時間觀察。不過採用OpenJDK之後應該能夠起到一些緩解作用,因為Google如今已經滿足了Java授權和專利許可,Oracle也不能再對Android說三道四了。
❺ 為什麼Android5.0源碼編譯只能使用openjdk,不能使用oracle-jdk
1)設置cache
cd aosp
prebuilts/misc/linux-x86/ccache/ccache -M 50G
2)初始化編譯環境
. build/envsetup.sh
3)選擇編譯目標包
ps:lunch的方式有很多中,可以使用lunch命令查看,我使用最常用的
lunch aosp_arm-eng
❻ 自己可以編譯安卓源碼嗎
用最新的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內核問題,解決方法如下:
執行如下命令:
通過使用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 N切換到openjdk對普通的手機用戶有什麼影響沒
原則上來說是沒有影響的.
對於App開發和實際的上層邏輯來說,library實現從Apache Harmony切換到OpenJDK對於大多數人來說是透明的.
因為API沒有什麼改動.
一些例外可能是用到了Harmony私有API的情況.
對於普通手機用戶而言,就有可能發生某些App不能繼續使用的情況.(在作者沒有適配OpenJDK的前提下)
還有一些可能是性能上的區別.
畢竟是兩種實現,組織結構和演算法優化度方面有所不同.
對於普通手機用戶而言,可能存在一些體驗上的差別,主要是實現差異導致的性能差別.
另外一種可能就是避免了跟Oracle的官司沖突.
因為OpenJDK是Oracle自身的開源授權.
對於普通手機用戶而言,這個意義可能不是很直接.但可以認為是一種穩定性的遠期保障.
❽ OpenJDK將對Android開發產生怎樣的影響
有單,的禮物,
❾ OpenJDK將對Android開發產生怎樣的影響
Android提供特定的Java API庫來支持基於Java編程語言的應用開發,這些資源分成兩個部分:Java代碼庫的API和谷歌開發的使得那些代碼庫可行的實現代碼。作為Java開發者,甲骨文對這些代碼庫有兩種實施:專有的JDK版本和開源的OpenJDK版本。谷歌決定「整合」它的努力成果和OpenJDK(Android已經在部分領域使用OpenJDK),意味著它將共享它的實現代碼。 上述的代碼提交顯示有8902個文件發生變化,清楚顯示OpenJDK代碼添加到了Android當中。 谷歌希望開發者會喜歡這一變動,因為它簡化了他們開發應用所基於的代碼——針對Java API庫的公共代碼基,而不是多個代碼基。這也許屬實,但如果那是谷歌完全轉向OpenJDK的唯一理由,它應該早就那麼做。
❿ OpenJDK將對Android開發產生怎樣的影響
Google已決定將從下一版本的Android開始採用OpenJDK,本文將部分摘錄互聯網上對於這一決定的反響。
在去年年底,我們曾提到Google已經決定在Android中使用OpenJDK,以取代基於Harmony實現的Java庫(詳情請見此處)。盡管這條消息在宣布時恰逢聖誕期間,但Google的這一決定還是在互聯網上引起了很大的反響,我們將在本文中對於這些觀點進行一次總結。
從這個Git工單可以看出,早在2015年二月,Google就已經在代碼中露出了切換至OpenJDK的計劃。在去年十二月,這次代碼提交中所包含的一個重要的授權信息的變化被媒體曝光了。Android N中所使用的新Java庫將不再基於Apache License 2.0(APL)授權協議,而是基於GNU GPL 2協議,並且在版權信息中包含了以下聲明:「Oracle及其附屬機構版權所有,1997,2011」。
Mozilla的前任CTO Andreas Gal為此專門寫了一篇標題有些駭人的博客「Oracle將它的魔爪伸向了Android」。他表示,Google長期以來一直堅持使用Harmony的Java庫及Apache授權,其原因在於:
用戶能夠任意使用及修改APL代碼,而無需發布這些改動。換句話說,你能夠進行具有專利權的改動與改進。而這一點對於基於LGPL授權協議的GNU libc來說是不可能的。我可以確信地說,我知道為什麼Google認為這一點很重要,因為在發布Firefox OS的過程中,我曾經和許多與Google有合作關系的晶元供應商以及OEM廠家進行過交流。晶元與OEM廠商都希望在軟體層面上表現出他們的優勢,嘗試對Android的代碼進行全方位的改進。尤其是晶元廠商經常會改動類庫中代碼,以充分利用自家的專利晶元,而且他們不願意公開分享這些改動。通過這種方式能夠體現出他們的競爭優勢,即在專利上的優勢。
Bob Ross回復了Gal的文章,他自稱是某家OEM廠商的員工,對於APL與GPL的爭論提出了一些見解:
我們確實會對libcore進行一些改動,在這種場合,主要問題是進行開源會帶來很大的工作量,倒不是說要保護這些代碼。至少從我曾經參與過的改動來看,情況就是如此。
Bradley M. Kuhn目前擔任自由軟體管理機構(Software Freedom Conservancy)的主席,同時也是自由軟體基金會(Free Software Foundation)的董事會成員。他對於GPL可能對Andoid開發所造成的影響有著不同的見解。在最近的一篇博客文章「Sun、Oracle、Android、Google以及JDK復制權(left)的質疑」中,Kuhn注意到OpenJDK授權其實屬於一個「非常寬松」的協議,即包含Classpath例外的GNU協議。Kuhn曾經參與了Classpath例外協議的設計與命名,這一協議旨在避免通過復制權保護的方式「感染」整個Java生態系統,否則所有的Java程序都將被迫選擇可以免費使用及重新分發的方式。如此一來,從授權協議的角度來看,選擇使用OpenJDK與使用Harmony也沒有多大的區別了。按照Kuhn的說法:
那麼,採用了Oracle的GPL及Classpath例外協議的JDK與具備Apache授權的Java userspace又有多大的差別呢?它們的差別其實並不大!Android的重新分發者已經在kernel space方面承擔了很大的復制權責任,並且請你記住,Webkit是基於LGPL授權協議的,所以說圍繞著Android已經存在著一些比較寬松的復制權遵循責任了。如此一來,如果說某個重新分發者已經滿足了以上協議,那麼要遵循那些新加入JDK代碼中的需求也不是什麼麻煩事,因為這些需求只有更為寬松。
但在Gal看來,Oracle對於Android的未來發展將產生重大的影響,這不僅僅是因為授權的原因,同時也受到Java的發展路線、商標、條約與專利的影響:
除了源代碼之外,Oracle還有別的方法可以控制Java的發展,因此OpenJDK所謂的自由性就好像一所監獄。你可以投票決定外牆有多高,甚至可以去參與砌牆工作,但一旦你進入這里,就只有Oracle能夠決定你何時才能出去。Oracle對於OpenJDK的路線圖有很大的決定權,通過對於兼容性需求、商標、現有協議以及API版權控訴(Oracle與Google之間的控訴)的掌握,Oracle幾乎全盤控制了OpenJDK的發展方向。
部分讀者在Gal的博客中留言表示,如果Oracle不能勝任OpenJDK的發展,那麼Google完全可以創建一個分支,並自行決定它的發展方向。