无需代码即可登录Android Studio

无需代码即可登录Android Studio


您不再需要将Log.d()放在每行代码上!


在调试应用程序时,有时我们会开始在整个代码中生成日志以处理任何问题。


 class MainActivity : AppCompatActivity() { lateinit var retrofit: Retrofit override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) setupToolbar() Log.d("MyApp", "Toolbar Set") initRetrofit() Log.d("MyApp", "Retrofit Initialized") var myButton = findViewById<Button>(R.id.search_close_btn) myButton.setOnClickListener { Log.d("MyApp", "My Button Clicked") } Log.d("MyApp", "Activity Creation Done!") } } 

这很好用,但是碰巧我们忘记在提交前删除日志,它们“安全地”进入了生产代码。


最好不要在完成日志后将日志留给调试,即使您使用ProGuard在编译后的代码中自动删除日志也是如此,因为它们会对代码的整体可读性产生不利影响。 就像注释一样,日志很容易开始与周围的代码有所不同,充其量变得毫无用处,最糟糕的是会引起误解。


当日志记录需要满足某些条件时,情况变得更加复杂。 现在,这不仅是无用的if else堆,而且还可能是昂贵的代码。


但是事实证明,有一种非常简单的方法可以解决此问题。 IntelliJ和Android Studio允许您创建不中断代码执行的断点(英文断点 )(是的,这是合法的)。


首先,通过单击编辑器的左侧或使用键盘快捷键Ctrl-F8在任意行上创建断点。 然后,您可以通过右键单击断点或使用键盘快捷键Ctrl-Shift-F8来编辑断点。 您将看到一个这样的窗口:


编辑断点


然后取消选中Suspend (俄罗斯暂停 ),您将在此模式窗口中看到更多选项:


断点参数


现在,将任何日志添加到“ Evaluate and log字段,如下所示:


评估并记录


在从代码中删除所有日志并将它们添加到断点之后,您的代码将看起来很干净:


 class MainActivity : AppCompatActivity() { lateinit var retrofit: Retrofit override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) setupToolbar() initRetrofit() var myButton = findViewById<Button>(R.id.search_close_btn) myButton.setOnClickListener { } } } 

好多了吧? 现在使用不间断的断点! 您所要做的就是以调试模式启动该应用程序,并且消息将显示在控制台中。


此处了解有关Android Studio中其他技巧的信息。

Source: https://habr.com/ru/post/zh-CN420777/


All Articles