当前标签 / 技巧 / 总共3篇

Debug 判断不再用 BuildConfig

本文转载自:https://www.trinea.cn/android/android-whether-debug-mode-why-buildconfig-debug-always-false/

Android 开发中一般会通过 BuildConfig.DEBUG 判断是否是 Debug 模式,从而做一些在 Debug 模式才开启的特殊操作,比如打印日志。这样好处是不用在发布前去主动修改,因为这个值在 Debug 模式下为 true,Release 模式下为 false。

问题

如果应用只有一个 Module 没有问题,Debug 模式下 BuildConfig.DEBUG 会始终为 true。如果现在有两个 Module,分别为 App 和 Lib,且 App 依赖 Lib,在 Lib 内有工具类 LogUtils,代码如下:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
package cn.trinea.android.lib.util;
 
import android.util.Log;
import cn.trinea.android.lib.util.BuildConfig;
 
public class LogUtils {
 
    public static void d(String log) {
        if (BuildConfig.DEBUG) {
            Log.d("trinea-debug", log);
        }
    }
    //……
}

当我们在 App Module 内调用 LogUtils 时我们会发现始终无法打印日志,因为上面的 BuildConfig.DEBUG 会始终为 false。为什么呢?

阅读更多

Kotlin开发Android的奇技淫巧记录

参考链接:《聊一聊Kotlin扩展函数run,with,let,also和apply的使用和区别》

前面几篇我们了解了kotlin的语法和概念的东西,接下来我们在实际使用中看看kotlin带给我们的惊喜。

扩展函数的利用

现象

先来看一段代码:

1
2
3
val avaliableTime: String?
avaliableTime = R.string.avaliable_time.resToString("3年")
println(avaliableTime)

其中 avaliable_time 资源的定义如下

1
<string name="avaliable_time">有效期%s</string>

最终打印结果为:有效期3年

上面这个特点就是Kotlin扩展函数带给我们的福利。

阅读更多

AndroidStudio 实用小技巧

概述

一般的什么快捷键,技巧的文章也有很多。我也看过很多。下面这些是我在来自国外大神发布的:Android Studio Tips of the Day (https://plus.google.com/u/0/collection/wtO0PB) 查看到的,而且对于我来说有帮助的及没用过的。

Android Studio 快捷键

Android Studio Tips of the Day (https://plus.google.com/u/0/collection/wtO0PB) 里面一共有八十几个。大家可以去查看完整的。而且是持续更新状态中。很有用(记得安全上网,翻墙哦。)

阅读更多