多渠道打包相关

2024-08-29 15:38
文章标签 相关 打包 多渠道

本文主要是介绍多渠道打包相关,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

通用配置文件

apply plugin: 'com.android.application'

android {//签名信息,通过setting可以设置生成
    signingConfigs {releasesign {keyAlias 'alias'
            keyPassword '密码'
            storeFile file('F:/appsignepyen/forqudao.jks')storePassword '密码'
        }}//-----------------------
    //--无关渠道
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    defaultConfig {applicationId "com.foruse.qudao"
        minSdkVersion 15
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }//-------------
    //设置debugherelease版本分别是用的签名  可以有区别
    buildTypes {
debug {signingConfig signingConfigs.releasesign
}
release {signingConfig signingConfigs.releasesign
}
} //不同的渠道包信息 productFlavors { meizu {//下面这几个信息不配置默认使用工程的 minSdkVersion 15 targetSdkVersion 23 versionCode 1 signingConfig signingConfigs.releasesign //这个是必要的 versionName '1.0.0' manifestPlaceholders = [UMENG_CHANNEL_VALUE: "meizu"]//配置友盟渠道信息 } //可以粘贴复制,或者通过settting设置 google { minSdkVersion 15 signingConfig signingConfigs.releasesign //携带签名信息 manifestPlaceholders = [UMENG_CHANNEL_VALUE: "google"]//配置友盟渠道信息 } }
//
   
//    productFlavors {  //极简样式
//        wandoujia {}
//        baidu {}
//        c360 {}
//        uc {}
//        productFlavors.all { flavor ->
//            flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
//        }
//    }

 //-----------------------------// 设置输出apk的名字 applicationVariants.all { variant -> variant.outputs.each { output -> def outputFile = output.outputFile if (outputFile != null && outputFile.name.endsWith('.apk')) { def fileName = outputFile.name.replace(".apk", "-${defaultConfig.versionName}.apk") output.outputFile = new File(outputFile.parent, fileName) } } } //------------------}// 无关渠道dependencies { }

<meta-data
    android:name="UMENG_CHANNEL"
    android:value="${UMENG_CHANNEL_VALUE}" />  //在清单文件添加这个

// "当前渠道  "+getMetaData(this, "UMENG_CHANNEL"));
  private static String getMetaData(Context context, String key) {try {ApplicationInfo ai = context.getPackageManager().getApplicationInfo(context.getPackageName(), PackageManager.GET_META_DATA);
          Object value = ai.metaData.get(key);
          if (value != null) {return value.toString();
          }} catch (Exception e) {}return null;
  }

们直接在dos命令定位到Demo4的项目目录(如果你用的是win7,可以直接先进入到项目目录,然后在空白处,先按住shift,再点右键选择"在此处打开命令窗口")

a: gradlew clean

b:gradlew assembleRelease    // 这是编译并打Release的包  在app--build目录下


可能出现

: 某些输入文件使用或覆盖了已过时的 API。
注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。
注: 某些输入文件使用了未经检查或不安全的操作。
注: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。

这个时候在build.gradle中添加如下配置:

allprojects {gradle.projectsEvaluated {tasks.withType(JavaCompile) {options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"}}
}

c:gradlew assembleDebug   //这是编译并打Debug包

d:

如果我们想打包wandoujia渠道的release版本,执行如下命令就好了: 
gradle assembleWandoujiaRelease   //必须有这个字段,不区分大小写

如果我们只打wandoujia渠道版本,则: 
gradle assembleWandoujia //
此命令会生成wandoujia渠道的Release和Debug版本

设置sign  http://download.csdn.net/detail/u013134722/9848983

参考: https://my.oschina.net/aibenben/blog/370985

   http://blog.csdn.net/u013278099/article/details/50463577

这篇关于多渠道打包相关的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1118269

相关文章

基于Python编写一个git自动上传的脚本(打包成exe)

《基于Python编写一个git自动上传的脚本(打包成exe)》这篇文章主要为大家详细介绍了如何基于Python编写一个git自动上传的脚本并打包成exe,文中的示例代码讲解详细,感兴趣的小伙伴可以跟... 目录前言效果如下源码实现利用pyinstaller打包成exe利用ResourceHacker修改e

Springboot配置文件相关语法及读取方式详解

《Springboot配置文件相关语法及读取方式详解》本文主要介绍了SpringBoot中的两种配置文件形式,即.properties文件和.yml/.yaml文件,详细讲解了这两种文件的语法和读取方... 目录配置文件的形式语法1、key-value形式2、数组形式读取方式1、通过@value注解2、通过

Springboot请求和响应相关注解及使用场景分析

《Springboot请求和响应相关注解及使用场景分析》本文介绍了SpringBoot中用于处理HTTP请求和构建HTTP响应的常用注解,包括@RequestMapping、@RequestParam... 目录1. 请求处理注解@RequestMapping@GetMapping, @PostMappin

python项目打包成docker容器镜像的两种方法实现

《python项目打包成docker容器镜像的两种方法实现》本文介绍两种将Python项目打包为Docker镜像的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目录简单版:(一次成功,后续下载对应的软件依赖)第一步:肯定是构建dockerfile,如下:第二步

Python打包成exe常用的四种方法小结

《Python打包成exe常用的四种方法小结》本文主要介绍了Python打包成exe常用的四种方法,包括PyInstaller、cx_Freeze、Py2exe、Nuitka,文中通过示例代码介绍的非... 目录一.PyInstaller11.安装:2. PyInstaller常用参数下面是pyinstal

nodejs打包作为公共包使用的完整流程

《nodejs打包作为公共包使用的完整流程》在Node.js项目中,打包和部署是发布应用的关键步骤,:本文主要介绍nodejs打包作为公共包使用的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言一、前置准备二、创建与编码三、一键构建四、本地“白嫖”测试(可选)五、发布公共包六、常见踩坑提醒

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资

idea Maven Springboot多模块项目打包时90%的问题及解决方案

《ideaMavenSpringboot多模块项目打包时90%的问题及解决方案》:本文主要介绍ideaMavenSpringboot多模块项目打包时90%的问题及解决方案,具有很好的参考价值,... 目录1. 前言2. 问题3. 解决办法4. jar 包冲突总结1. 前言之所以写这篇文章是因为在使用Mav

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

CSS3中的字体及相关属性详解

《CSS3中的字体及相关属性详解》:本文主要介绍了CSS3中的字体及相关属性,详细内容请阅读本文,希望能对你有所帮助... 字体网页字体的三个来源:用户机器上安装的字体,放心使用。保存在第三方网站上的字体,例如Typekit和Google,可以link标签链接到你的页面上。保存在你自己Web服务器上的字