build.gradle 多渠道打包和用正式签名运行调试

简介: build.gradle 多渠道打包和用正式签名运行调试

build.gradle

第一部分申请插件

第二部分andorid 里面有 defaultConfig,signingConfigs,buildTypes,productFlavors,lintOptions等等

第三部分dependencies 第三方依赖


第三部分dependencies 第三方依赖

//第一部分
apply plugin: 'com.android.application'
//----第二部分--android---start-----------
android {
    compileSdkVersion 23
    buildToolsVersion "23.0.3"
 
    defaultConfig {
        applicationId "com.llkj.webactivity"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 2
        versionName "1.1"
    }
    //签名配置
    signingConfigs {
  //正式签名配置
        releaseConfig {
            keyAlias 'lanlingcesi'
            keyPassword '111111'
            storeFile file('G:\\androidstudioproject\\WebActivity\\lanlingcesi.jks')
            storePassword '111111'
        }
    }
    buildTypes {
  //正式打包用的签名
        release {
    // 外部调用内部的属性
            signingConfig signingConfigs.releaseConfig
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
  //debug打包也用正式的签名
        debug {
            signingConfig signingConfigs.releaseConfig
        }
    }
  //多渠道打包
    productFlavors {
 
        wandoujia {}
        baidu {}
        c360 {}
        uc {}
        productFlavors.all { flavor ->
            flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
        }
 
    }
    lintOptions {
        checkReleaseBuilds false
        abortOnError false
        // if true, only report errors
        ignoreWarnings true
        // set to true to turn off analysis progress reporting by lint
        quiet true
    }
 
 
}
//------android---end-----------
//---第三部分---dependencies---start-----------
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.3.0'
    //注入
    compile 'com.jakewharton:butterknife:7.0.1'
    //日历
    compile 'com.squareup:android-times-square:1.6.5@aar'
    compile 'com.umeng.analytics:analytics:latest.integration'
}

U-APP渠道分析可以分渠道查看不同渠道的新增、活跃、启动次数等数据,用户添加渠道只需以下三步:                                      

(1)配置渠道ID

  安卓用户可在mainfest通过<meta-data android:value="Channel ID" android:name="UMENG_CHANNEL"/>来设置渠道ID,或者在Activity中配置,参考集成文档;iOS用户可在AppDelegate通过 UMConfigInstance.ChannelId = @"Channel ID"设置。

     注:Channel ID为应用的推广渠道,由用户自主定义,可以使用20位以内的英文或数字命名(不建议使用英文命名)。


(2)apk打包,发送给对应的渠道商  

     注:一个包中只能添加一个渠道,多个渠道需要打多个包。


(3)用户下载启动app,友盟后台显示渠道信息

     将安装包发送给渠道后,新用户通过该渠道下载启动app,友盟后台收到了该渠道包的启动日志,经过解析之后,才会出现该渠道的信息。如果新渠道未在友盟后台显示,说明还没有人安装这个渠道包并启动。用户可以使用一台新的设备去安装这个新的渠道包,启动之后,友盟后台就会出现这个渠道啦。

     注:一定要用新设备,因为每台设备仅记录首次安装激活的渠道,如果该设备再次安装其他渠道包,则数据仍会被记录在初始的安装渠道上。 因此在测试不同的渠道时,请使用不同的设备来分别测试。

 <meta-data

           android:name="UMENG_APPKEY"

           android:value="4f83c5d852701564c0000011"/>

      <meta-data

           android:name="UMENG_CHANNEL"

           android:value="${UMENG_CHANNEL_VALUE}"/>


相关文章
|
14天前
|
Android开发
Android Gradle开发—脚本实现自动打包后复制一份APK文件,并修改APK名称,到指定目录作备份
Android Gradle开发—脚本实现自动打包后复制一份APK文件,并修改APK名称,到指定目录作备份
25 0
|
2月前
|
Android开发
gradle 变体打包 productFlavors
gradle 变体打包 productFlavors
33 5
|
8月前
|
jenkins Java Shell
Jenkins 打包shell出现gradle命令不存在,jvm内存溢出
Jenkins 打包shell出现gradle命令不存在,jvm内存溢出
68 4
|
算法 安全 Java
Gradle(10)一篇文章看懂 v1/v2/v3 签名机制
Gradle(10)一篇文章看懂 v1/v2/v3 签名机制
759 0
Gradle(10)一篇文章看懂 v1/v2/v3 签名机制
|
开发工具
Gradle使用命令行打包apk
Gradle使用命令行打包apk
437 0
Gradle使用命令行打包apk
|
Java Android开发
Android Gradle 多渠道打包
Android Gradle 多渠道打包
591 2
Android Gradle 多渠道打包
|
Web App开发 Java 开发工具
友盟在AS中利用Gradle进行多渠道打包和APK签名发布( 五 )
这篇是直接给大家上代码,希望让大家了解到友盟
402 0
|
Web App开发 Java 开发工具
|
Java
友盟在AS中利用Gradle进行多渠道打包和APK签名发布( 三 )
接上两篇的知识,这篇也是分享一下配置信息
275 0
|
Web App开发 Android开发 数据安全/隐私保护
友盟在AS中利用Gradle进行多渠道打包和APK签名发布( 二 )
自从Google放弃对Eclipse的维护,并力推Android studio时,其版本的更新迭代速度也是非常快的,而且开发的工程中经常需要用到gradle的相关操作
95 0