在Android Studio(AS)的開發(fā)中,遇到引入外部類庫或第三方j(luò)ar包的情況,確實是件很惱人的事情。因為AS是基于Gradle構(gòu)建,所以和傳統(tǒng)的導(dǎo)入方式有些不一樣。
筆者也曾為此頭疼過好一陣,現(xiàn)在終于有了解決辦法,拿出來和大家分享一下。
這里以導(dǎo)入Google Services library為例,具體操作步驟如下。
1. 打開你的buid.gradle文件。應(yīng)該用哪一個呢?Project中的,還是Module中的?(如圖所示,Module中的)
2 . 將google-play-services.jar這個jar包拷到指定的位置。原來可能是在這個目錄下:$ANDROID-SDK/extras/google/google_play_services/libproject/google-play-services_lib/libs ,比如現(xiàn)在我把它放到了$GOOGLE_PLAY_LIB目錄下。
3 . 如果你已經(jīng)有了別的dependencies(如Android Studio Library),我們把它加到list當中去,也就是將你需要編譯的部分,從dependencies中移到list里。
例如先前長這樣:
List myDependencies = ["com.android.support:appcompat-v7:18.0.+"] dependencies { //moved into List above, so there'll be nothing here. }
4. 加入Google Play Library之后:
List myDependencies = ["com.android.support:appcompat-v7:18.0.+", fileTree (dir: '$GOOGLE_PLAY_LIB', includes: ['*.jar'])]
PS:不要忘了把$GOOGLE_PLAY_LIB 改成你本地的目錄,如 E://Android/Development/Lib
5. 修改dependencies里面的內(nèi)容:
List myDependencies = ["com.android.support:appcompat-v7:18.0.+", fileTree (dir: 'E://Android/Development/Lib', includes: ['*.jar'])] dependencies { compile myDependencies }
6. 然后就是耐心等待項目compile和make了。^_^
筆者成功的測試過Google Android Map v2,如果你有遇到問題,歡迎留言。
=======以下是另一個網(wǎng)友留言,有更簡便一些,不過得注意路徑的問題========
只需要從SDK中下載 Google Repository & Google Play Services,然后在build.gradle文件中申明,如下所示:
dependencies { compile('com.android.support:appcompat-v7:18.0.+') compile('com.android.support:support-v4:13.0.0') compile ('com.google.android.gms:play-services:3.2.25') }
再或者,直接:compile files('libs/google-play-services.jar')