Bugly符号表插件使用指南

Bugly插件具有符号表文件上传功能,支持JCenter仓库Maven Central仓库

添加依赖

在项目的buid.gradle文件的dependencies(buildscript部分)中添加:

classpath 'com.tencent.bugly:symtabfileuploader:latest.release'

其中version为符号表文件上传插件版本号,更新插件只需要修改这个版本号并Rebuild一下工程即可。

添加插件和配置

在module的buid.gradle文件的顶部添加:

apply plugin: 'bugly'

bugly {
    appId = '<APP_ID>' // 注册时分配的App ID
    appKey = '<APP_KEY>' // 注册时分配的App Key
}

其中APP_ID和APP_KEY是必填的,App ID和App key可以从“产品设置”里面获取。

除了appId和appKey之外,还可以设置其他属性,属性列表如下:

属 性 类型 默认值 说 明
debug boolean false 调试模式开关(具体说明见下文“调试模式”)
appId String null App ID
appKey String null App Key
appPackage String null App包名
appVersion String null App版本
appChannel String null App渠道
execute boolean true 插件开关
upload boolean true 上传开关
uploadMapping boolean true Mapping文件上传开关
uploadSymbol boolean true Symbol文件上传开关
outputDir String <项目路径>/bugly 符号表文件输出路径

例子

<Project>/build.gradle文件如下:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.tencent.bugly:symtabfileuploader:latest.release'
    }
}

<Project>/<Module>/build.gradle文件如下:

apply plugin: 'bugly'

bugly { 
    appId = "xxxxxx"
    appKey = "xxxxxx"
}

如果使用了ProductFlavors区分产品渠道,并使用了不同的App ID和App key,可以使用以下方式来根据渠道配置。:

apply plugin: 'bugly'

android.applicationVariants.all { variant ->
    def buglyAppId = null;
    def buglyAppKey = null;
    if (variant.flavorName.equals("channel1")) { // 渠道1:channel1
        buglyAppId = 'xxxxxx'
        buglyAppKey = 'xxxxxx'
    } else if (variant.flavorName.equals("channel2")) { // 渠道2:channel2
        buglyAppId = 'xxxxxx'
        buglyAppKey = 'xxxxxx'
    }
    if(buglyAppId != null) {
        variant.ext.buglyAppId = buglyAppId
    }
    if (buglyAppKey != null) {
        variant.ext.buglyAppKey = buglyAppKey
    }
}

插件说明

  • Bugly插件会创建上传符号表文件的“upload${VariantName}SymtabFile”任务;
  • 默认只在Release编译打包的时候自动执行符号表文件上传任务,调试模式下Debug编译打包也会自动执行符号表文件上传任务;
  • 如果项目使用了代码混淆(Proguard),插件将自动上传Proguard生成的Mapping文件;
  • 如果项目中包含Native工程,插件将自动扫描Debug SO文件,生成符号表文件(zip)并自动上传;
  • 通过上传日志文件来防重,相同的符号表文件不会上传多次。

调试模式

调试模式默认关闭,打开方法如下:

bugly {
    debug = true
}

开启插件调试模式之后,将打印更详细日志,并在Debug编译打包的时候自动执行符号表文件上传任务。

其他说明

  • 插件会默认在工程目录下生成“bugly”目录,用于保存插件的日志文件,并作为默认的Symbol文件生成路径;
  • 插件的日志文件包括两个:Symbol日志文件(BuglySymtabLog.txt)和上传日志文件(BuglyUploadLog.txt);
  • 插件默认读取ProductFlavors的作为渠道(appChannel)信息。