国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

android-studio - Android Studio 中有沒有類似C#的#if DEBUG功能

瀏覽:197日期:2024-09-08 08:14:10

問題描述

VisualStudio中如果當前模式為DEBUG,那么我在代碼中可以在#if DEBUG中執行一些代碼,比如Debug模式中訪問的API為www.aaa.com。而正式發布release時API是www.bbb.com,這在vs中是可以。不知道Android Studio中有沒有類似的功能。

android-studio - Android Studio 中有沒有類似C#的#if DEBUG功能

android-studio - Android Studio 中有沒有類似C#的#if DEBUG功能

問題解答

回答1:

Android Studio 會自動添加 BuildConfig 類,這個類有一個字段叫 DEBUG,它的值根據當前的編譯方式自動生成,編譯方式為 debug 時值為 true,release 時值為 false。所以可以根據這個特點在函數中添加 if (BuildConfig.DEBUG) 類來實現類似的功能,一個比較常見的例子是自定義 Log 類,使得在 debug 時輸出 log,release 時不輸出:

public void d(String tag, String message) { if (BuildConfig.DEBUG) {Log.d(tag, message); }}回答2:

沒有,Java不支持宏定義,所有的調試信息都會進入編譯結果。你只能在程序中設置變量讓調試程序在生產環境中不執行。Android Manifest中有版本信息,默認會生產Debug和Release兩種版本,你可以通過程序判斷來實現切換參數。

回答3:

AS的調試過程中可以動態設置變量值~

回答4:

這個功能很雞肋,明明可以自己寫代碼實現的(不超過3行代碼就能搞定),非要android原生去實現,如你所愿的話安卓開發將會更加復雜,我們需要記住更多雞肋功能了(得不償失)

回答5:

可以利用BuildConfig來實現

回答6:

可以,借助gradle配置:變量、版本信息

回答7:

看看android studio的debug技巧,http://weishu.me/2015/12/21/a...,不要太牛逼

相關文章:
主站蜘蛛池模板: 贵定县| 新田县| 景洪市| 北海市| 防城港市| 万山特区| 武邑县| 平远县| 佳木斯市| 浠水县| 阜新市| 安图县| 南乐县| 邛崃市| 乌苏市| 嵩明县| 伊金霍洛旗| 周至县| 永康市| 七台河市| 新源县| 马边| 鹤岗市| 襄樊市| 合阳县| 图们市| 松溪县| 阜阳市| 上思县| 拜泉县| 迭部县| 新宾| 峨眉山市| 巴塘县| 上高县| 元朗区| 龙海市| 武城县| 大港区| 长沙市| 肇庆市|