android | studio的UI布局和代码调试 | UI调试 (用于找到项目源码)

网上找到一个项目,想快速的搞懂是怎么实现的,搞了半天发现原来android都升级到Jetpack Compose了,然后去找源码挺不容易的,摸索中发现了这个调试的方法,还可以。

https://developer.android.com/studio/debug/layout-inspector?hl=zh-cn 官网的说明

Jetpack Compose 中的debug调试_composer debug模式-CSDN博客 这个总结比较好用(Tools > Layout Inspector 好用),注意:开启后重启studio编辑器

Android Studio 4.0 Layout Inspector isn't working - Stack Overflow 然后遇到的问题(要加sdk)

开始Jetpack Compose 中的debug调试了:

然后,通过这个UI的布局找到源代码(右键 Go To Declaration),然后用源代码的标签去找到逻辑实现的代码上打断点,如图:

再然后,通过DEBUG的断点找到事件的切入点,就可以发现方法中的逻辑代码了。

注意点:当发现断点不灵的时候,可能有如下情况:

  1. 运行的代码与源码不匹配:如果你在运行的同时修改了代码,但是没有重新编译和运行,那么打的断点可能就无法对应到实际运行的代码上。

  2. IDE 或调试工具的问题:有时候也可能是开发环境或者调试工具自身的问题,需要重启或者清理一下环境

这时候最好Clean Project 一下,然后重建项目就好了。

相关推荐
Lesile1 天前
Interview#1 历史演进:MVC · MVP · MVVM · MVI架构详解
android·android jetpack
杉氧1 天前
Flutter 像素级还原实战:用 CustomPaint 与 Bezier 曲线手绘精致图针
android·前端·flutter
我命由我123451 天前
Android 在构建过程中,发现有两个依赖库都包含了相同路径的资源文件
android·java·开发语言·java-ee·kotlin·android-studio·android runtime
Coffeeee1 天前
谷歌的一个优化建议,让我重新学了一遍Android里面如何正确处理位图
android·google·kotlin
冰暮流星1 天前
mysql之新建表及对表的查询
android·数据库·mysql
用户2018792831671 天前
彻底搞懂LayoutInflater、ViewInflater与textViewStyle优先级:XML属性为何能覆盖全局样式?
android
达达尼昂1 天前
AI Native 工程实践:如何为 Claude 5 设计更有效的上下文
android·人工智能·后端
Cry丶1 天前
【已解决】adb devices 能识别手机,但 HBuilderX 搜索不到设备的避坑指南
android·adb·uni-app·hbuilderx·真机调试
墨神谕1 天前
认识一下Unicode(统一码)
android·java·数据库
Sirens.2 天前
MySQL表设计进阶-约束范式连接索引与事务
android·数据库·mysql