Git Product home page Git Product logo

uinspector's Introduction

Uinspector

A UI inspector to traverse a view hierarchy on Android

Build Jitpack Maven Central

中文版Readme

Preview

What are the properties Where is the source code Show the layout boundary
After selecting the view, you can see the line number of source code Line 59 in the corresponding file is the source code where Text is located

Feature

  • Don't have to endure the long loading with Layoutinspector
  • Support extensions:
    • Glide
    • Fresco
    • MultiType
    • Lottie
    • Jetpack compose

Usage

  1. Start the inspector through the notification
  2. Tap the view you want to inspect
  3. Now you can see the properties on the popup panel
  4. Uinspector intercept the 'single tap' event, but you can perform click on a View by double tap instead! And the scroll event/ key event can be dispatched as usual.

Get Started

repositories {
    mavenCentral()
}

dependencies {
    // debugImplementation because Uinspector should only run in debug builds.
    debugImplementation "io.github.yvescheung:Uinspector:x.y.z"
    
    // optional integration library
    debugImplementation "io.github.yvescheung:Uinspector-optional-viewmodel:x.y.z"
    debugImplementation "io.github.yvescheung:Uinspector-optional-fresco:x.y.z"
    debugImplementation "io.github.yvescheung:Uinspector-optional-glide:x.y.z"
    debugImplementation "io.github.yvescheung:Uinspector-optional-multitype:x.y.z"
    debugImplementation "io.github.yvescheung:Uinspector-optional-lottie:x.y.z"
    
    // optional integration library for Jetpack Compose!
    debugImplementation "io.github.yvescheung:Uinspector-optional-compose:x.y.z"
}

x.y.z replace with Maven Central

That’s it, there is no code change needed!

Optional Dependencies

  • Glide

    If an image is loaded with Glide, you can inspect the properties on the ImageView:

    Inspect ImageView with Glide

    glide model : The image source, maybe an url or a resource id

    glide error : The error drawable

    glide placeholder: The place holder drawable

    All you need to do is Add the gradle dependency on the Glide integration library:

    dependencies {
        debugImplementation 'com.github.YvesCheung.UInspector:Uinspector-optional-glide:x.y.z'
    }

    x.y.z replace with Maven Central

To see more optional dependencies below:

Develop

  • You can develop your own panel and add it into UInspector:

    See Doc

  • UInspector will launch automatically when the application starts. You can disable this feature if you don't want this:

    dependencies {
         debugImplementation('com.github.YvesCheung.UInspector:Uinspector:x.y.z') {
             // After excluding, UInspector won't launch until you invoke it's `create` method!
             exclude module: 'Uinspector-optional-autoinstall'
         }
    }
  • Development environment

    • Branch 2.x : Enable Jetpack Compose compiler feature.
    • Branch 1.x : Just Android View.

Inspiration

License

Copyright 2020 Yves Cheung

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   	http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

uinspector's People

Contributors

yvescheung avatar hackmd-deploy avatar revolter avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.