kotlin 中分模塊開發的配置

A,設置是library還是application(假如模塊是UserCenter)

      1,gradle.properties 添加     isUserModule = false  (true 表示是library   false 表示是application可單獨運行)

      2,build.gradle 添加 

      if (isUserModule.toBoolean()){
          apply plugin: 'com.android.library'
      }else {
          apply plugin: 'com.android.application'
      }
      apply plugin: 'kotlin-android'
      apply plugin: 'kotlin-android-extensions'

     3,在src/main 文件夾下新建 debug和release文件夾,同時放入AndroidManifest.xml

           debug/AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.jrkj.usercenter">

    <application
            android:allowBackup="true"
            android:label="@string/app_name"
            android:supportsRtl="true"
            android:theme="@style/Theme.AppCompat.NoActionBar">
        <activity android:name=".ui.activity.RegisterActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>

                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
    </application>

</manifest>

       release/AndroidManifest.xml           

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.jrkj.usercenter">

    <application
            android:allowBackup="true"
            android:label="@string/app_name"
            android:supportsRtl="true"
            >
        <activity android:name=".ui.activity.RegisterActivity">
        </activity>
    </application>

</manifest>

    4,build.gradle的android 中添加

 sourceSets{
        main{
            if (isUserModule.toBoolean()){
                manifest.srcFile 'src/main/release/AndroidManifest.xml'
                // release 模式下排除debug文件夾中所有的java文件
                java{
                    exclude 'debug/**'
                }
            }else {
                manifest.srcFile 'src/main/debug/AndroidManifest.xml'
            }
        }
    }

 5,在主build.gradle 

if (isUserModule.toBoolean()){
        implementation project(path: ':usercenter')
    }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章