网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

Android开发——利用productFlavors实现一套代码打包多版本

一、需求背景

10年积累的成都做网站、网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先做网站设计后付款的网站建设流程,更有康县免费网站建设让你可以放心的选择与我们合作。

实际项目开发过程中,经常会遇到这样的场景:一个项目要根据需要打包成多个存在差异的版本,比如对外版本、对内版本,或者开发版本、测试版本、线上版本等等……那么如何通过维护一套代码的前提下实现打包多版本的需求呢?在Android Studio中我们可以使用productFlavors来实现这样的需求。

二、创建差异化版本目录结构

根据版本的差异化在src目录下创建对应的java文件夹,如下图:

Android开发——利用productFlavors实现一套代码打包多版本

创建external与internal版本,将版本差异化的代码文件放在这2个目录对应的文件夹下,具体的目录层次同main下面的一样即可;

三、配置gradle文件

在moudle的gradle配置文件中增加如下配置:

android {
  
  ……
  
    productFlavors {
        internal {
            manifestPlaceholders = [app_label:"对内app"]
            applicationId "com.ad.demo.internal"
        }
        external {
            manifestPlaceholders = [app_label:"对外app"]
            applicationId "com.ad.demo.external"
        }
    }
}

四、在代码中判断版本

如果有些逻辑需要在代码中判断版本,可以通过BuildConfig.FLAVOR去获取当前选择的是什么版本值:

if(BuildConfig.FLAVOR.equals("external")){
    textView.setText(getResources().getString(R.string.my_app_name) + "对外应用");
}

五、按版本打包

签名打包的时候,选择对应的版本即可

Android开发——利用productFlavors实现一套代码打包多版本


网页名称:Android开发——利用productFlavors实现一套代码打包多版本
浏览地址:http://bjjierui.cn/article/ihogij.html

其他资讯