UInspector: 取代LayoutInspector的检阅工具

2024-02-18 17:10

本文主要是介绍UInspector: 取代LayoutInspector的检阅工具,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

UInspector

UInspector

LayoutInspector

自从AS升级到4.x后,你的LayoutInspector会不会经常和我一样

明明连着设备,却检测不到对应的进程?

检阅速度非常慢,直到超时都没有出画面?

勾选Live Update后,画面延迟成了PPT,最后放弃Live Update?

终于,我放弃了LayoutInspector,选用更轻量的Uinspector来辅助完成一些基本的ui检查。

Uinsepctor是什么?

Uinspector 是一个集成在Android应用内的ui检阅工具。

开启 Uinspector 后,通过点击屏幕上的元素来选取要检阅的目标,弹出的面板中可以查看目标 View 的布局和属性。

查看View的大小/边距/基本属性查找目标所在的Activity/Fragment,快速定位所在代码
Preview PropertiesPreview Hierarchy

相比起LayoutInspector有什么优势?

1. 轻便快速

从手机的通知栏打开Inspector,直接点击屏幕就可以看到目标属性!
从通知栏点击关闭即可停止检阅,用完即走。
UInspector Usage

2. 追踪动画

相比起幻灯片级的“Live Update”,Uinspector 直接运行在你的应用进程中,可以通过监听 View 的变化实时作出反馈,追踪布局/属性的变化,甚至是动画。

Trace Animator

3. 支持添加你的自定义View和自定义属性

Uinspector 可以集成其他第三方库,查看他们的特有属性:

查看Glide的图片源查看Fresco的图片源查看Lottie的动画属性
Inspect GlideInspect FrescoInspect Lottie

当图片资源加载异常时,你可以点击图片地址用浏览器打开,快速确认是客户端加载问题还是图片资源本身的问题!

大部分的自定义 View 属性都非常丰富,使用 LayoutInspector 都是无法直接查看的。

而利用 Uinspector 加上你自己的集成库,则可以方便的支持这些属性。第三方集成库文档。

甚至这个弹出面板的样式和内容不满足你的需求,也可以添加你自己开发的面板进去。

如何使用Uinsepctor?

只需要在项目的 build.gradle 文件中添加一句:

dependencies {debugImplementation 'com.huya.mobile:Uinspector:1.0.5'
}

就可以了! 如果不需要自定义开发的话,无需添加任何代码。

可选地,也可以根据需要添加一些第三方集成库:

dependencies {debugImplementation 'com.huya.mobile:Uinspector-optional-glide:1.0.5'debugImplementation 'com.huya.mobile:Uinspector-optional-fresco:1.0.5'debugImplementation 'com.huya.mobile:Uinspector-optional-lottie:1.0.5'
}

需要注意的是:

打开 Uinspector 后,依然可以正常对应用进行手势操作,比如滑动屏幕,back键返回等等。

但是,单击事件会被消费,成为选中检阅目标的操作

在这种模式下,可以通过双击来代替原来的点击,来触发原来onClickListener的操作!

源码地址: https://github.com/YvesCheung/UInspector

这篇关于UInspector: 取代LayoutInspector的检阅工具的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/721850

相关文章

SQLite3命令行工具最佳实践指南

《SQLite3命令行工具最佳实践指南》SQLite3是轻量级嵌入式数据库,无需服务器支持,具备ACID事务与跨平台特性,适用于小型项目和学习,sqlite3.exe作为命令行工具,支持SQL执行、数... 目录1. SQLite3简介和特点2. sqlite3.exe使用概述2.1 sqlite3.exe

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

Python使用smtplib库开发一个邮件自动发送工具

《Python使用smtplib库开发一个邮件自动发送工具》在现代软件开发中,自动化邮件发送是一个非常实用的功能,无论是系统通知、营销邮件、还是日常工作报告,Python的smtplib库都能帮助我们... 目录代码实现与知识点解析1. 导入必要的库2. 配置邮件服务器参数3. 创建邮件发送类4. 实现邮件

CnPlugin是PL/SQL Developer工具插件使用教程

《CnPlugin是PL/SQLDeveloper工具插件使用教程》:本文主要介绍CnPlugin是PL/SQLDeveloper工具插件使用教程,具有很好的参考价值,希望对大家有所帮助,如有错... 目录PL/SQL Developer工具插件使用安装拷贝文件配置总结PL/SQL Developer工具插

Python使用FFmpeg实现高效音频格式转换工具

《Python使用FFmpeg实现高效音频格式转换工具》在数字音频处理领域,音频格式转换是一项基础但至关重要的功能,本文主要为大家介绍了Python如何使用FFmpeg实现强大功能的图形化音频转换工具... 目录概述功能详解软件效果展示主界面布局转换过程截图完成提示开发步骤详解1. 环境准备2. 项目功能结

Linux系统之stress-ng测压工具的使用

《Linux系统之stress-ng测压工具的使用》:本文主要介绍Linux系统之stress-ng测压工具的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、理论1.stress工具简介与安装2.语法及参数3.具体安装二、实验1.运行8 cpu, 4 fo

Maven项目中集成数据库文档生成工具的操作步骤

《Maven项目中集成数据库文档生成工具的操作步骤》在Maven项目中,可以通过集成数据库文档生成工具来自动生成数据库文档,本文为大家整理了使用screw-maven-plugin(推荐)的完... 目录1. 添加插件配置到 pom.XML2. 配置数据库信息3. 执行生成命令4. 高级配置选项5. 注意事

Python使用pynput模拟实现键盘自动输入工具

《Python使用pynput模拟实现键盘自动输入工具》在日常办公和软件开发中,我们经常需要处理大量重复的文本输入工作,所以本文就来和大家介绍一款使用Python的PyQt5库结合pynput键盘控制... 目录概述:当自动化遇上可视化功能全景图核心功能矩阵技术栈深度效果展示使用教程四步操作指南核心代码解析

如何基于Python开发一个微信自动化工具

《如何基于Python开发一个微信自动化工具》在当今数字化办公场景中,自动化工具已成为提升工作效率的利器,本文将深入剖析一个基于Python的微信自动化工具开发全过程,有需要的小伙伴可以了解下... 目录概述功能全景1. 核心功能模块2. 特色功能效果展示1. 主界面概览2. 定时任务配置3. 操作日志演示