android 教你如何创建马甲包

看到马甲包 很多人应该都知道 也有很多人不知道 知道马甲包的

看到我的文章的话 那里有不足还请多多指教不知道马甲包的 带你看看一个新的世界

好了 废话不多说 看下面的具体操作来实现

 在看具体操作之前 我们应该先知道 什么叫马甲包

         在App的开发过程中,经常会遇到产品或者运营的同事提出要制作马甲包的需求;马甲包是指与原APP包除了包名,包id,包名称图标等给用户加以区分的东西,其他功能基本不变的APP包。在开发马甲包之前,一定要和产品或者运营的同事讨论清楚马甲包的具体需求,比如需要制作多少个马甲包,马甲包和主包有哪些差别,之后开发的功能是否需要在马甲包上体现等等,只有了解清楚了需求,才能达到事半功倍的效果。

       这也是一个粘来的不知道谁总结的马甲包的概念  不是很能理解  马甲包的实际概念其实和比如app换了一个架子 换了一件衣服 但是实际来说的话 本质还是不变的 只是在原来的基础上加入了一些功能,不说那么多的废话了 说了也感觉跟白说似的

开始上代码
         

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "jinqiang.zhang.com.majiatext"
        minSdkVersion 15
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        manifestPlaceholders = [APP_NAME: 'jinqiang.zhang.com.majiatext'] // 配置主包的应用名称
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        // 马甲包
        majiabao1.initWith(buildTypes.debug) // 以release的配置来初始化马甲包配置
        majiabao1 {
            // 修改马甲包的applicationId
            applicationIdSuffix "com.majiabao1"
            manifestPlaceholders = [APP_NAME: '第一个马甲包'] // 配置马甲包的应用名称
        }
        // 马甲包
        majiabao2.initWith(buildTypes.debug) // 以release的配置来初始化马甲包配置
        majiabao2 {
            // 修改马甲包的applicationId
            applicationIdSuffix "com.majiabao2"
            manifestPlaceholders = [APP_NAME: '第二个马甲包'] // 配置马甲包的应用名称
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

}

按照上面的build.gradle文件里进行配置就行 一定要看好不要少任何一个步骤 

在这里配置主包的名称  

在下面进行配置马甲包的包名 特别强调debug模式和release模式  

建议使用debug模式进行配置  

之后的话在清单文件里面把下面的一些代码加入

<application
    android:allowBackup="true"
    android:icon="@mipmap/icon_collection_pre2"
    android:label="${APP_NAME}"
    tools:replace="android:label"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
</application>

配置完成后进行同步

同步完成后打开Build Variants

之后选择

 

之后进行编译就可以了 就可以看到不一样的app了

android编译的话一般是根据Applicationid进行编译文件

修改资源文件 等字符串资源的话要在src文件夹下创建和你地马甲包一样的后缀名的文件夹

把main文件夹下面的资源文件的文件夹进行修改就可以了 

修改完成后记得想运行那个就在Build Variants调到那个马甲包里面就可以了

看一下效果图吧

 

有的地方我自己也不是很明白 希望有人指点 

猜你喜欢

转载自blog.csdn.net/qq_42250299/article/details/88973969
今日推荐