美文网首页
library模块与项目工程切换

library模块与项目工程切换

作者: 翟小乙 | 来源:发表于2020-10-20 14:05 被阅读0次

    我们创建一个项目,这个项目需要引入一个library,我们需要测试这个library,因此我们可以把library转化为工程,需要时更改参数变为库。

    1.isUserMoudle = flase 时编译的是项目工程,加载的AndroidManifest是测试配置
    2.isUserMoudle = true 时编译的是项目工程,加载的AndroidManifest是发布配置

    一. gradle.properties添加标识(加到项目工程中,不是library中)
    isUserMoudle = false
    
    二. build.gradle修改plugin
    if (isUserMoudle.toBoolean()) {
        apply plugin: 'com.android.library'
    } else {
        apply plugin: 'com.android.application'
    }
    apply plugin: 'kotlin-android'
    
    三. 在main下创建release包和debug包

    1.release包下创建AndroidManifest.xml

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.zyj.kotlin.usercenter">
    
      <application>
          <activity android:name=".ui.activity.RegisterActivity" />
      </application>
    </manifest>
    

    2.debug包下创建AndroidManifest.xml

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.zyj.kotlin.usercenter">
    
        <application
            android:allowBackup="true"
            android:icon="@mipmap/ic_launcher"
            android:label="@string/app_name"
            android:roundIcon="@mipmap/ic_launcher_round"
            android:supportsRtl="true"
            android:theme="@style/Theme.AppCompat.Light.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>
    
    二. build.gradle动态加载AndroidManifest.xml
    sourceSets{
            main{
                if (isUserMoudle.toBoolean()) {
                      manifest.srcFile 'src/main/release/AndroidManifest.xml'
                  java{ //若是发布正常版,需要去除掉java下debug文件夹代码
                       exclude 'debug/**'
                    }
                }else {
                      manifest.srcFile 'src/main/debug/AndroidManifest.xml'
                }
            }
        }
    

    相关文章

      网友评论

          本文标题:library模块与项目工程切换

          本文链接:https://www.haomeiwen.com/subject/zhqdmktx.html