84669 orang belajar
152542 orang belajar
20005 orang belajar
5487 orang belajar
7821 orang belajar
359900 orang belajar
3350 orang belajar
180660 orang belajar
48569 orang belajar
18603 orang belajar
40936 orang belajar
1549 orang belajar
1183 orang belajar
32909 orang belajar
VisualStudio中如果当前模式为DEBUG,那么我在代码中可以在#if DEBUG中执行一些代码,比如Debug模式中访问的API为www.aaa.com。而正式发布release时API是www.bbb.com,这在vs中是可以。不知道Android Studio中有没有类似的功能。
人生最曼妙的风景,竟是内心的淡定与从容!
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); } }
没有,Java不支持宏定义,所有的调试信息都会进入编译结果。你只能在程序中设置变量让调试程序在生产环境中不执行。Android Manifest中有版本信息,默认会生产Debug和Release两种版本,你可以通过程序判断来实现切换参数。
AS的调试过程中可以动态设置变量值~
这个功能很鸡肋,明明可以自己写代码实现的(不超过3行代码就能搞定),非要android原生去实现,如你所愿的话安卓开发将会更加复杂,我们需要记住更多鸡肋功能了(得不偿失)
可以利用BuildConfig来实现
可以,借助gradle配置:变量、版本信息
看看android studio的debug技巧,http://weishu.me/2015/12/21/a...,不要太牛逼
Android Studio 会自动添加 BuildConfig 类,这个类有一个字段叫 DEBUG,它的值根据当前的编译方式自动生成,编译方式为 debug 时值为 true,release 时值为 false。所以可以根据这个特点在函数中添加 if (BuildConfig.DEBUG) 类来实现类似的功能,一个比较常见的例子是自定义 Log 类,使得在 debug 时输出 log,release 时不输出:
没有,Java不支持宏定义,所有的调试信息都会进入编译结果。你只能在程序中设置变量让调试程序在生产环境中不执行。
Android Manifest中有版本信息,默认会生产Debug和Release两种版本,你可以通过程序判断来实现切换参数。
AS的调试过程中可以动态设置变量值~
这个功能很鸡肋,明明可以自己写代码实现的(不超过3行代码就能搞定),非要android原生去实现,如你所愿的话安卓开发将会更加复杂,我们需要记住更多鸡肋功能了(得不偿失)
可以利用BuildConfig来实现
可以,借助gradle配置:变量、版本信息
看看android studio的debug技巧,http://weishu.me/2015/12/21/a...,不要太牛逼