前言:
- 在上周了解一些關(guān)于插件更新的技術(shù)院崇,發(fā)現(xiàn)阿里將要開源一款可以用于組件化的Atlas框架。前兩天發(fā)現(xiàn)已經(jīng)開源了陵叽,真是驚喜無比在這里感謝阿里的開源精神媳友。
- 官方的Demo比較簡(jiǎn)陋也沒有詳細(xì)的說明文檔风科,在使用中遇到很多坑撒轮。這篇文章獻(xiàn)給還無從下手的小伙伴們。
GitHub地址:https://github.com/alibaba/atlas
官網(wǎng)地址:http://atlas.taobao.org/
需要了解的知識(shí): http://www.reibang.com/p/cff4684803f3
提示:
1贼穆、最近Atlas官方更新了Demo
2题山、以下教程只針對(duì)老版本Demo
3、新版本的使用教程我就不寫了故痊,這里我提供一個(gè)我自己寫的簡(jiǎn)化版本Demo顶瞳,該有的功能都有也都加了注釋,可以很方便的運(yùn)用到項(xiàng)目當(dāng)中: 組件框架Demo下載
<br />
簡(jiǎn)介:
先說下功能:
- 插件化開發(fā)愕秫,宿主與插件獨(dú)立開發(fā)慨菱。
- 插件動(dòng)態(tài)更新修復(fù)能力,快速升級(jí)戴甩。
<br />
使用到的項(xiàng)目atlas-demo
重要:
- app:相當(dāng)于宿主(宿主依賴插件的方式暫時(shí)是通過maven來進(jìn)行依賴符喝,compile project本地依賴方式需要等到2.3.0 的版本)。
- FirstBundle:相當(dāng)于插件(每次修改完成需要提交到maven甜孤,再讓宿主依賴實(shí)現(xiàn)插件獨(dú)立)协饲。
- 也就是說宿主與插件的依賴方式是通過遠(yuǎn)程調(diào)用來達(dá)成的,從而達(dá)到組件獨(dú)立開發(fā)缴川。
<br />
注意的事項(xiàng):
- JDK請(qǐng)使用1.8版本茉稠。
- 如果卡在構(gòu)建界面,查看下是否下載了對(duì)應(yīng)的gradle-2.14.1版本把夸,gradle3.3版本暫時(shí)還不支持而线。
- 更新下最新的Demo,之前的Demo會(huì)有找不到dom4j等一些問題扎即。
<br />
操作說明:
一:插件FirstBundle
1、打開FirstBundle提交默認(rèn)版本到本地maven况凉,比如修改為1.1.4
通過命令 gradlew clean assembleRelease publishMavenPublicationToMavenLocal
2. 修改build.gradle
修改版本號(hào)谚鄙,并修改FirstBundleActivity(暫時(shí)不支持新增Activity)
3. 編譯提交1.1.5到本地maven
通過命令 gradlew clean assembleRelease publishMavenPublicationToMavenLocal
<br />
二:生成宿主APP
1. 修改版本
對(duì)應(yīng)FirstBundle未做修改的 1.1.4版本。
2. 配置的插件位置
依賴FirstBundle刁绒,version需要對(duì)應(yīng)本地maven插件的版本號(hào)闷营。
3. 通過sh buildApk.sh編譯
編譯出初始版本宿主Apk(宿主里已經(jīng)包含了FirstBundle),在安裝到手機(jī)里。
如果不想使用sh命令傻盟,可以通過gradlew clean assembleDebug publish編譯出初始包速蕊。
<br />
三、升級(jí)宿主App版本娘赴,生成差異補(bǔ)丁
1. 修改版本號(hào)
這里的1.1.5就是我修改好后上傳maven的FirstBundle項(xiàng)目规哲。
2. 通過 sh buildTpatch.sh編譯
- 編譯出差異包patch-1.1.5@1.1.4.tpatch與更新文件update.json
- 差異包生成位置:atlas-demo\app\build\outputs\tpatch-debug
- 如果不想使用sh命令,可以通過:gradlew clean assembleDebug -DapVersion=1.1.4 -DversionName=1.1.5 編譯(apVersion對(duì)應(yīng)之前打的初始包版本號(hào)诽表,versionName對(duì)應(yīng)更新后的版本號(hào))唉锌。
<br />
四:導(dǎo)入補(bǔ)丁到sd卡
- 宿主Demo里取這兩個(gè)補(bǔ)丁文件的地址是(SD卡/Android/data/項(xiàng)目名稱/cache/目錄下)當(dāng)然也可以自己去修改。
- 把剛才生成的兩個(gè)文件放入到配置的目錄下竿奏。
- 打開應(yīng)用點(diǎn)擊動(dòng)態(tài)部署(如果沒有意外的話就可以看到請(qǐng)重啟App)
<br />
題外話:
- sh命令需要下載Git并配置環(huán)境變量
- gradlew命令需要下載對(duì)應(yīng)得gradlew版本
- 我上面的命令操作都是通過Terminal操作的
<br />
總結(jié)
剛才開始無從下手袄简,只能通過查看源碼慢慢理解。對(duì)初學(xué)的開發(fā)者并不友好泛啸,所以寫了這篇文章作為操作說明绿语,希望能幫助小伙伴快速入門。
<br /><br />