第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

BuildConfigField 決定如何定義成員(枚舉)

BuildConfigField 決定如何定義成員(枚舉)

開心每一天1111 2023-06-14 16:02:50
build.gradle(模塊):productFlavors {    mytest {        ...        buildConfigField "boolean", "SHORT_ENUM", "false"    }    mysecondtest {        buildConfigField "boolean", "SHORT_ENUM", "true"    }在 MyClass 中,我想根據(jù)我定義的 buildConfigField 在構(gòu)建期間定義枚舉成員:public class MyClass {    // members initialization    public enum MYENUM {        if (BuildConfig.SHORT_ENUM) {            FIRST(0),            SECOND(1);        }        else { // SHORT_ENUM is false            FIRST(0),            SECOND(1),            THIRD(2),            FORTH(3);        }        private int value;        MYENUM(int v) {            value = v;        }    }    ....}但它不起作用。有沒有可能做我想做的事?如果是,那么如何?
查看完整描述

2 回答

?
慕工程0101907

TA貢獻1887條經(jīng)驗 獲得超5個贊

您不能只if在類定義中編寫語句。

Java 中沒有 ifdef 和 ifndef。

您可以做的是為每個產(chǎn)品風格創(chuàng)建 java 代碼文件夾,然后在每個文件夾中正確創(chuàng)建枚舉定義。

示例:
app/src/debug/java/my/package/MyEnum.java
app/src/beta/java/my/package/MyEnum.java

然后,當您構(gòu)建 debug 時,它將使用 debug 版本,如果您構(gòu)建 beta,它將使用 beta 版本。


查看完整回答
反對 回復(fù) 2023-06-14
?
溫溫醬

TA貢獻1752條經(jīng)驗 獲得超4個贊

在這種情況下BuildConfig.SHORT_ENUM是一個boolean.

只需使用

if (BuildConfig.SHORT_ENUM){
  ...
}

無論如何,您不能以這種方式進行。這取決于您想如何使用它們。你有很多選擇:

  • 您可以在不同的 buildTypes 中使用 2 個不同的類。

  • 只需創(chuàng)建一個方法,該方法將根據(jù)條件返回值


查看完整回答
反對 回復(fù) 2023-06-14
  • 2 回答
  • 0 關(guān)注
  • 137 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號