官术网_书友最值得收藏!

1.7 項(xiàng)目依賴庫

依賴庫的方法主要有兩種:一種是本地依賴,另一種是在線依賴。

本地依賴庫一般是公司內(nèi)部把一些項(xiàng)目通用的代碼封裝成庫,可以根據(jù)業(yè)務(wù)需求隨時(shí)修改代碼,并且代碼都在本地,不會(huì)被公開。

在線依賴庫一般是個(gè)人或者組織對(duì)解決某個(gè)問題的代碼進(jìn)行開源,例如從服務(wù)器請(qǐng)求數(shù)據(jù),這是市面上90%的App都需要用到的功能,Android自帶的訪問網(wǎng)絡(luò)api太煩瑣,于是就需要把網(wǎng)絡(luò)請(qǐng)求的代碼進(jìn)行封裝,這樣就有一些公司會(huì)把自己App中訪問網(wǎng)絡(luò)的代碼封裝成一個(gè)庫,提交到遠(yuǎn)程中央倉庫。別人就能通過在線依賴的方式引用這個(gè)庫,大家都站在巨人的肩膀上,還有一個(gè)好處就是,這個(gè)庫有bug,只要開源者修復(fù)這個(gè)問題,然后提交一個(gè)新的版本,所有依賴者根本不需要修改代碼,只需要修改版本號(hào)即可解決bug。

1.7.1 依賴本地庫

依賴本地庫(module)就是源代碼在你當(dāng)前電腦上,依賴庫有什么問題,可以隨時(shí)修改。

例如,在自己已打開的項(xiàng)目下新建一個(gè)庫“my-library-module”,如果想依賴這個(gè)庫,打開應(yīng)用模塊的build.gradle文件,并向dependencies塊中添加一行如下的新代碼:

    compile project(':my-library-module')

點(diǎn)擊Sync Project with Gradle Files。修改后的項(xiàng)目結(jié)構(gòu)如圖1-50所示。

圖1-50 新建module并進(jìn)行依賴

1.7.2 在線依賴庫

在線依賴源代碼保存在服務(wù)器中,當(dāng)我們第一次依賴時(shí),會(huì)從遠(yuǎn)程倉庫中下載jar或者aar文件,Android Studio之前默認(rèn)的在線依賴倉庫是jcenter,從Android Studio 3.0之后增加了Google自己的倉庫。上傳到遠(yuǎn)程倉庫上的在線依賴庫(module),必須要對(duì)代碼進(jìn)行開源。

在線依賴的庫可以看到源碼,但是不能修改。在后面的章節(jié)中我會(huì)告訴大家如何讓自己的module上傳到j(luò)center服務(wù)器。

在線依賴很簡單,跟本地依賴一樣,也只需要一行代碼。打開應(yīng)用模塊的build.gradle文件,并向dependencies塊中添加一行新代碼。例如,新建項(xiàng)目時(shí)就有的v7包依賴。

    compile 'com.android.support:appcompat-v7:26.+'

在線依賴庫的代碼能不能不開源

可以不開源,我們可以搭建自己的內(nèi)網(wǎng)jcenter服務(wù)器。

主站蜘蛛池模板: 利辛县| 芜湖县| 恩施市| 新竹市| 喜德县| 罗田县| 绥芬河市| 宜宾县| 慈溪市| 类乌齐县| 合川市| 淮北市| 合阳县| 汝州市| 五家渠市| 荥经县| 衡山县| 白城市| 师宗县| 敖汉旗| 抚州市| 凤庆县| 崇仁县| 海口市| 姜堰市| 开封市| 盐源县| 乐昌市| 扶绥县| 麻栗坡县| 皮山县| 班戈县| 四会市| 贵港市| 遵义市| 广宁县| 九江市| 道真| 工布江达县| 沐川县| 钦州市|