CodeLocator登场
CodeLocator
是字节跳动开源的一个包含 Android SDK 与 Android Studio 插件的 Android 工具集。个人使用之后感觉是安卓开发人员的利器,推荐给大家。(mac、windows都可以用)
CodeLocator
的丰富功能可以让安卓应用人员受益,下面这个GIF展示了一些CodeLocator
的功能。
目前字节系几乎所有 App 都在使用它
快速上手
在 Android Studio中安装 CodeLocator 插件
下载最新插件 zip 文件到本地:https://github.com/bytedance/CodeLocator/releases
选择 Android Studio > Preferences > Plugins > Install Plugin from Disk
,选择下载的Zip文件安装即可
工程中集成CodeLocator
// 集成基础能力, 只需要添加一行依赖即可
dependencies {
// 依赖androidx, 已升级AndroidX的项目集成下面的依赖
implementation "com.bytedance.tools.codelocator:codelocator-core:2.0.3"
// 未升级AndroidX的项目集成下面的依赖 support版本不再维护 请升级androidx
implementation "com.bytedance.tools.codelocator:codelocator-core-support:2.0.0"
}
目前官网描述的代码跳转的能力,需要集成 Lancet,但是Lancet的引入有关于Gradle 版本和AGP 版本的要求
集成Lancet 插件和依赖的项目,关于Gradle 版本和AGP 版本不能适配超过7.2,不建议高版本去适配,已经帮大家踩了很多坑了。还有,CodeLocator对compose支持不是友好
当工程的依赖和Android Studio的插件都到位之后,便可以启动开发app,然后使用抓取功能和调试开发。
界面介绍
CodeLocator 插件是一个侧边栏插件, 安装后会在Android Studio的右侧, 点击Tab即可展开插件, 初始状态如下
功能介绍
CodeLocator目前支持二十六种按钮操作, 当按钮呈现绿色高亮时表示可点击, 当按钮处于灰色状态时表示不可点击, 鼠标悬停一段时候后会出现具体的功能描述
这里介绍一下我自己在使用CodeLocator的一些场景。
UI相关功能
当抓取了app当前的界面之后,直接可以在界面上点击,然后查看一些组件尺寸和间距的情况。这里在界面上有几种点击模式:
-
直接单击: 会按照可点击属性查找View, 上层可点击View会覆盖底部View。
-
control(Alt) + 单击: 会去查看view的深度,z轴的情况。
-
Shift + 单击: 多选View, 同时可对比最后选中的两个View的间距,大家在安卓XML开发的时候,在真机测试下,这里的间距和尺寸观察就十分有用了。
实时修改ui
在界面上,点击view组件之后,可以直接右键选择修改属性,当然这里选中view之后右键还有很多好用的功能。
直接修改view组件的属性: 字符内容、字体大小、颜色、可见性、内外边距等等
CodeLocator 还有复制窗口功能,复制窗口之后还有diff模式,比对ui的差别。
跳转界面对应的activity和fragment
CodeLocator可以在界面上,根据你抓取的界面和view组件,来判断它是在哪个activity、fragment和对应的XML组件名,并且直接选择跳转。
一些项目上,想快速知道这个页面到底归属哪个activity、fragment或者XML组件的时候,这个功能的优越性就体现出来了。
快速启动charles
一键启动charles,并且在Android Studio随开随关,不需要你去手机上专门开启和关闭代理
开启
关闭
上图工具箱中的集成功能也很丰富,也是在Android Studio随开随关。
工具箱
值得一提的是工具箱中的集成功能也很丰富,也是随开随关。例如可快速打开布局边界, 显示触摸位置, 显示过渡绘制等开发工具
集成lanct有的功能
如果CodeLocator集成了lancet相关依赖和插件之后,可以有更强大的代码跳转能力:
-
跳转findViewById
-
跳转clickListener
-
跳转touchListener
-
跳转XML
-
跳转viewHolder
-
跳转startActivity
-
跳转相应的dialog、toast
作者:steveay
链接:https://juejin.cn/post/7280787122012405794
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。