關(guān)于androidstuio導(dǎo)入系統(tǒng)源碼的問題
最近公司需要做一些將系統(tǒng)源碼導(dǎo)出來,然后加入一些功能,在導(dǎo)入androidstudio過程中遇到過一些問題,這里記錄下,方便以后需要。
一般導(dǎo)入成功的都是系統(tǒng)比較相對獨(dú)立的app,比如計(jì)算器、Schedule power on off等,網(wǎng)上查閱一些資料后,最終解決。
這里以Schedule power on off為例。
1、導(dǎo)出Schedule power on off源碼,路徑為/package/apps/
如圖:


新建androidstudio項(xiàng)目,導(dǎo)入相關(guān)代碼以及相關(guān)資源文件,rebuild一下,發(fā)現(xiàn)報(bào)錯(cuò)。

為了能在android studio里使用framework層隱藏的接口,需要自己編譯下framework的源碼,得到framework.jar和classes.jar。具體路徑如下:
如果編譯debug版本:
out/target/product/projectXX/system/framewor framework.jar
如果是user版本:
out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.jar
這里新建一個(gè)ext_libs,將class.jar改為framework.jar

app.build使用:
allprojects {
repositories {
jcenter()
}
gradle.projectsEvaluated {
tasks.withType(JavaCompile) {
//使用全路徑
options.compilerArgs.add('-Xbootclasspath/p:D://workspace/SchedulePowerOnOff-master/app/ext_libs/framework.jar')
}
}
}
android{
repositories {
flatDir {
dirs 'libs'
}
}
// u
......
}
provided files('ext_libs/framework.jar')
使用provided只是在編譯時(shí)使用,不打包到apk中
build.gradle中
allprojects {
repositories {
maven {
// url 'https://maven.google.com/'
url 'https://dl.google.com/dl/android/maven2/'
name 'Google'
}
jcenter()
}
gradle.projectsEvaluated {
tasks.withType(JavaCompile) {
options.compilerArgs.add('-Xbootclasspath/p:D://workspace/SchedulePowerOnOff-master/app/ext_libs/framework.jar')
}
}
}
然后rebuild一下,會發(fā)現(xiàn)隱藏的方法還是會報(bào)錯(cuò)。這是因?yàn)闆]有優(yōu)先使用ext_libs下的framework.jar
修改:app.iml

如圖
將截圖處移至最后面。便可解決。
build一下,發(fā)現(xiàn)隱藏方法導(dǎo)包成功。到此就結(jié)束了。
以上就是關(guān)于androidstuio導(dǎo)入系統(tǒng)源碼的詳細(xì)內(nèi)容,更多關(guān)于androidstuio導(dǎo)入系統(tǒng)源碼的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Android中檢查、監(jiān)聽電量和充電狀態(tài)的方法
這篇文章主要介紹了Android中檢查、監(jiān)聽電量和充電狀態(tài)的方法,如判斷當(dāng)前充電狀態(tài)、監(jiān)聽充電狀態(tài)的改變、判斷當(dāng)前剩余電量等,需要的朋友可以參考下2014-06-06
Android實(shí)現(xiàn)界面左右滑動切換功能
相信大家一定都使用過手機(jī)QQ和微信之類的軟件,當(dāng)我們使用時(shí)不難發(fā)現(xiàn)其界面的切換不僅可以通過點(diǎn)擊頁標(biāo)簽來實(shí)現(xiàn),還可以通過左右滑動來實(shí)現(xiàn)的,下面小編給大家介紹下如何實(shí)現(xiàn)這個(gè)功能2016-12-12
Android 對話框(Dialog)大全示例(建立你自己的對話框)
android開發(fā)中,對話框的使用還是很平凡的,本篇文章介紹了Android 對話框的實(shí)例,詳細(xì)的介紹了多種對話框的方法,有興趣的可以了解一下。2016-11-11
Android 實(shí)現(xiàn)旋轉(zhuǎn)木馬的音樂效果
大家一定在百度音樂上在線聽過歌,有沒有注意到那個(gè)旋轉(zhuǎn)的唱片,本篇文章主要介紹在Android上如何實(shí)現(xiàn)這樣的功能,有需要的小伙伴可以參考下2016-07-07
Android中使用ScrollView實(shí)現(xiàn)滑動到底部顯示加載更多
本文主要介紹了android利用ScrollView實(shí)現(xiàn)滑動到底部顯示加載更多的示例代碼。具有很好的參考價(jià)值。下面跟著小編一起來看下吧2017-04-04
關(guān)于androidstuio導(dǎo)入系統(tǒng)源碼的問題
小編最近在做系統(tǒng)源碼導(dǎo)出來的小項(xiàng)目,在導(dǎo)入androidstudio過程中遇到過一些問題,本文以Schedule power on off為例給大家詳細(xì)介紹,需要的朋友參考下吧2021-06-06
Android編程開發(fā)之在Canvas中利用Path繪制基本圖形(圓形,矩形,橢圓,三角形等)
這篇文章主要介紹了Android編程開發(fā)之在Canvas中利用Path繪制基本圖形的方法,涉及Android基本的圖形繪制技巧,結(jié)合實(shí)例分析了繪制圓形,矩形,橢圓,三角形等基本圖形的實(shí)現(xiàn)方法,需要的朋友可以參考下2016-01-01

