pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

多個(gè)變體的多個(gè)簽名配置

Multiple signingConfigs for multiple variants(多個(gè)變體的多個(gè)簽名配置)
本文介紹了多個(gè)變體的多個(gè)簽名配置的處理方法,對(duì)大家解決問(wèn)題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧!

問(wèn)題描述

如何為不同的變體設(shè)置不同的簽名配置?

How can I set different signing configs for different variants?

例如,我們目前有 Debug/Beta/Release 兩種構(gòu)建類(lèi)型,免費(fèi)和付費(fèi),產(chǎn)生 6 個(gè)變體.為了讓它更容易一點(diǎn),讓我們忘記 Debug 變體,只關(guān)注 freeBeta/paidBeta/freeRelease/paidRelease.

For instance, we currently have the buildtypes Debug/Beta/Release with 2 flavors, free and paid, resulting in 6 variants. To make it a bit easier, let's forget the Debug variants and only focus on freeBeta/paidBeta/freeRelease/paidRelease.

我想要的是,每個(gè)變體使用單獨(dú)的不同簽名配置.

What I'd like, is for each variant to use a separate different signingConfig.

到目前為止,我能找到的唯一解決方案是將signingConfigs 放在buildTypes 中,這樣所有Beta 變體都將具有相同的signingConfigs:

So far the only solutions I could find is either putting the signingConfigs in the buildTypes so all Beta variants would have the same signingConfigs:

buildTypes {
    beta {
        signingConfigs.beta
    }
    release {
        signingConfigs.release
    }
}

或者,使用風(fēng)味,在這種情況下,所有免費(fèi)變體都將具有相同的簽名配置:

Alternatively, using the flavors, in which case all free variants would have the same signingConfigs:

productFlavors {
    free {
        signingConfig signingConfigs.free
        applicationId 'com.example.free'
    }
    paid {
        signingConfig signingConfigs.paid
        applicationId 'com.example.paid'
    }
}

在當(dāng)前的 productFlavor 閉包中有沒(méi)有辦法做到這一點(diǎn)?這只能通過(guò)覆蓋 android.applicationVariants.all { variant -> 并根據(jù)某種命名方案或其他一些丑陋的 hack 為每個(gè)應(yīng)用程序變體手動(dòng)應(yīng)用signingConfig 來(lái)解決嗎?

Is there a way to do this in the current productFlavor closure? Can this only be fixed by overridding the android.applicationVariants.all { variant -> and manually applying a signingConfig for each application variant based on some naming scheme or some other ugly hack?

我也找到了這個(gè)答案,但是它似乎不適用于最新的構(gòu)建工具;編譯時(shí)出現(xiàn)以下錯(cuò)誤:

I also found this answer, but it doesn't appear to work in the latest build tools; when compiling I get the following error:

FAILURE:構(gòu)建失敗并出現(xiàn)異常.

FAILURE: Build failed with an exception.

  • 其中:構(gòu)建文件 '/home/dev/projects/app/build.gradle' 行:61

  • Where: Build file '/home/dev/projects/app/build.gradle' line: 61

出了什么問(wèn)題:評(píng)估項(xiàng)目 ':app' 時(shí)出現(xiàn)問(wèn)題.

What went wrong: A problem occurred evaluating project ':app'.

在 ProductFlavor 容器上找不到免費(fèi)"屬性.

Could not find property 'free' on ProductFlavor container.

推薦答案

https://stackoverflow.com/a/32810290/3961802 答案不起作用.

    beta {
        productFlavors.free.signingConfig signingConfigs.freeBeta
        productFlavors.paid.signingConfig signingConfigs.paidBeta
    }
    release {
        productFlavors.free.signingConfig signingConfigs.freeRelease
        productFlavors.paid.signingConfig signingConfigs.paidRelease                
    }

在這種情況下,發(fā)布版本類(lèi)型將覆蓋所有風(fēng)格.所以 freeBeta 的簽名配置將是 freeRelease.

In this case, the release build type will overwrite all flavors. So signing config for the freeBeta will be freeRelease.

目前,我知道的唯一解決方案是在單獨(dú)的任務(wù)中簽署所有構(gòu)建變體.

At the moment, the only solution that I know is to sign all the build variants in a separate task.

signingConfigs {

    bananaDebug {}
    bananaBeta {}
    bananaRelease {}

    orangeDebug {}
    orangeBeta {}
    orangeRelease {}

    lemonDebug {}
    lemonBeta {}
    lemonRelease {}
}

productFlavors {

    banana {}

    orange {}

    lemon {}
}

buildTypes {

    debug {}

    beta {}

    release {}
}

applicationVariants.all {
    def flavorName = it.getFlavorName()
    def buildTypeName = it.buildType.name
    def buildVariantName = flavorName + buildTypeName.capitalize()
    def currentSigningConfig = signingConfigs.getByName(buildVariantName)

    it.mergedFlavor.signingConfig = currentSigningConfig
    // If you want to sign debug build
    buildTypes.debug.signingConfig currentSigningConfig
}

這篇關(guān)于多個(gè)變體的多個(gè)簽名配置的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來(lái)源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問(wèn)題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

IncompatibleClassChangeError after updating to Android Build Tools 25.1.6 GCM / FCM(更新到 Android Build Tools 25.1.6 GCM/FCM 后出現(xiàn) IncompatibleClassChangeError)
How to get current flavor in gradle(如何在 gradle 中獲取當(dāng)前風(fēng)味)
How to fix quot;unexpected element lt;queriesgt; found in lt;manifestgt;quot; error?(如何修復(fù)“意外元素lt;查詢gt;在“清單中找到錯(cuò)誤?)
Multi flavor app based on multi flavor library in Android Gradle(基于 Android Gradle 中多風(fēng)味庫(kù)的多風(fēng)味應(yīng)用)
Android dependency has different version for the compile and runtime(Android 依賴在編譯和運(yùn)行時(shí)有不同的版本)
Transitive dependencies for local aar library(本地 aar 庫(kù)的傳遞依賴)
主站蜘蛛池模板: 台湾阳明固态继电器-奥托尼克斯光电传感器-接近开关-温控器-光纤传感器-编码器一级代理商江苏用之宜电气 | 盘装氧量分析仪-防爆壁挂氧化锆分析仪-安徽吉帆仪表有限公司 | 混合生育酚_醋酸生育酚粉_琥珀酸生育酚-山东新元素生物科技 | 华中线缆有限公司-电缆厂|电缆厂家|电线电缆厂家 | 净水器代理,净水器招商,净水器加盟-FineSky德国法兹全屋净水 | 丹佛斯变频器-丹佛斯压力开关-变送器-广州市风华机电设备有限公司 | 水性绝缘漆_凡立水_绝缘漆树脂_环保绝缘漆-深圳维特利环保材料有限公司 | 全自动过滤器_反冲洗过滤器_自清洗过滤器_量子除垢环_量子环除垢_量子除垢 - 安士睿(北京)过滤设备有限公司 | 电动卫生级调节阀,电动防爆球阀,电动软密封蝶阀,气动高压球阀,气动对夹蝶阀,气动V型调节球阀-上海川沪阀门有限公司 | 贵州科比特-防雷公司厂家提供贵州防雷工程,防雷检测,防雷接地,防雷设备价格,防雷产品报价服务-贵州防雷检测公司 | 特种阀门-调节阀门-高温熔盐阀-镍合金截止阀-钛阀门-高温阀门-高性能蝶阀-蒙乃尔合金阀门-福建捷斯特阀门制造有限公司 | 康明斯发电机,上柴柴油发电机,玉柴柴油发电机组_海南重康电力官网 | 桥架-槽式电缆桥架-镀锌桥架-托盘式桥架 - 上海亮族电缆桥架制造有限公司 | 制氮设备_PSA制氮机_激光切割制氮机_氮气机生产厂家-苏州西斯气体设备有限公司 | 专业的压球机生产线及解决方案厂家-河南腾达机械厂 | 哔咔漫画网页版在线_下载入口访问指引| 食品质构分析仪-氧化诱导分析仪-瞬态法导热系数仪|热冰百科 | 电竞馆加盟,沈阳网吧加盟费用选择嘉棋电竞_售后服务一体化 | 宝元数控系统|对刀仪厂家|东莞机器人控制系统|东莞安川伺服-【鑫天驰智能科技】 | 江苏全风,高压风机,全风环保风机,全风环形高压风机,防爆高压风机厂家-江苏全风环保科技有限公司(官网) | 成都办公室装修-办公室设计-写字楼装修设计-厂房装修-四川和信建筑装饰工程有限公司 | 范秘书_懂你的范文小秘书| 百度网站优化,关键词排名,SEO优化-搜索引擎营销推广 | 广东健伦体育发展有限公司-体育工程配套及销售运动器材的体育用品服务商 | 集装箱展厅-住人集装箱住宿|建筑|房屋|集装箱售楼处-山东锐嘉科技工程有限公司 | 深圳希玛林顺潮眼科医院(官网)│深圳眼科医院│医保定点│香港希玛林顺潮眼科中心连锁品牌 | cnc精密加工_数控机械加工_非标平键定制生产厂家_扬州沃佳机械有限公司 | 昊宇水工|河北昊宇水工机械工程有限公司| 河北中仪伟创试验仪器有限公司是专业生产沥青,土工,水泥,混凝土等试验仪器的厂家,咨询电话:13373070969 | UV-1800紫外光度计-紫外可见光度计厂家-翱艺仪器(上海)有限公司 | 浙江栓钉_焊钉_剪力钉厂家批发_杭州八建五金制造有限公司 | 江门流水线|江门工作台|江门市伟涛行工业设备有限公司 | 郑州律师咨询-郑州律师事务所_河南锦盾律师事务所 | 上海璟文空运首页_一级航空货运代理公司_机场快递当日达 | Duoguan 夺冠集团| 不锈钢发酵罐_水果酒发酵罐_谷物发酵罐_山东誉诚不锈钢制品有限公司 | 压缩空气冷冻式干燥机_吸附式干燥机_吸干机_沪盛冷干机 | 生物制药洁净车间-GMP车间净化工程-食品净化厂房-杭州波涛净化设备工程有限公司 | 上海单片机培训|重庆曙海培训分支机构—CortexM3+uC/OS培训班,北京linux培训,Windows驱动开发培训|上海IC版图设计,西安linux培训,北京汽车电子EMC培训,ARM培训,MTK培训,Android培训 | 广东佛电电器有限公司|防雷开关|故障电弧断路器|智能量测断路器 广东西屋电气有限公司-广东西屋电气有限公司 | 湖南印刷厂|长沙印刷公司|画册印刷|挂历印刷|台历印刷|杂志印刷-乐成印刷 |