ArcGIS4Android 2:多個安卓module共享jar和so文件


初學java和安卓,簡單的學習歷程記錄,勿噴。

android studio一個project下有多個module共享jar和so文件的解決方案,解決重復問題。

1.多處重復引用libs和so文件問題

android studio一個project下有多個module的情況,以前引用共同的jar包和so文件,是每個module下復制一份。

結果這樣重復文件太多了,而且體積很大。

方框1和2中的東西是重復的。

2.新建公用目錄

Project下新建libs和jniLibs目錄(也可以自定義名字),用來放置公用部分。

並將jar包和so包分別放進這兩個目錄(一個目錄也可以,兩個更容易區分不同類型用途)。

如圖所示:

3.修改引用

在各個module的build.gradle中修改引用地址。

sourceSets:指定so文件位置

depencies:指定依賴jar位置

 

helloworld的build.gradle文件內容。

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion '23.0.1'

    defaultConfig {
        minSdkVersion 19
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }

    packagingOptions{
        exclude 'META-INF/LGPL2.1'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/NOTICE'
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }

//指定位置
    sourceSets{
        main{
            jniLibs.srcDirs=['../jniLibs'];
        }
    }
}

//指定依賴的jar包位置
dependencies {
    // module dependency
    //    compile 'com.esri.arcgis.android:arcgis-android:10.2.5'
    // local binary dependency
    compile files('../libs/jcifs-1.3.17.jar')
    compile files('../libs/arcgis-android-api.jar')
    compile files('../libs/arcgis-android-app-toolkit.jar')
    compile files('../libs/jackson-core-1.9.5.jar')
    compile files('../libs/jackson-mapper-1.9.5.jar')
}
build.gradle

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM