Blankj/AndroidUtilCode
50.8
Adequate · 6 August 2026
56.8k
lines of production code
Java
with Kotlin
4
measurements over time
What this system is
This system is an Android utility library ecosystem, primarily centered around 'UtilCode' and 'SubUtil', which provide a comprehensive suite of helper classes for common Android development tasks such as UI customization, device information, and system interactions. The project also includes a set of interactive demo activities that showcase the functionality of these utilities, serving as both documentation and testing grounds. Additionally, the codebase features a modular Gradle-based build system with custom plugins for bytecode manipulation and automated code generation.
How it got here
2016–2019 — Modular architecture and utility expansion
46 changes.
The project established a modular Gradle-based build system and expanded its Android utility library with numerous new helper classes and demo activities. This period focused on structuring the codebase into distinct feature and library modules, while simultaneously enriching the core utility code with comprehensive implementations and interactive examples.
2020–2021 — Build automation and feature expansion
4 changes.
This period focused on enhancing development workflows and expanding the library's capabilities. The team introduced a Gradle plugin to automate README generation and build configuration, alongside convenience scripts for Android builds and Git operations. Additionally, new demo activities were added for clipboard and volume control features.
Features
Add Android application entry point and configuration for the launcher feature
The launcher feature now includes the necessary Android infrastructure to run as a standalone application. This includes a new AndroidManifest.xml defining the main activity and launcher intent filters, a custom Application class (LauncherApp) to manage the application lifecycle, and standard build configuration files (proguard-rules.pro, .gitignore) to support the Android build process.
feature/launcher · high confidence
Add Android utility code package with demo activities and configuration
The \feature/utilcode/pkg\ module is introduced, providing a new Android package (\com.blankj.utilcode.pkg\) that bundles a comprehensive set of demo activities for various utility functions (such as activity management, bar notifications, cleaning, keyboard handling, and more). The package includes a central \CoreUtilActivity\ that serves as a hub to access these demos, along with supporting classes like \Config\ for paths and constants, \UtilCodeApiImpl\ for API integration, and standard Android configuration files (\AndroidManifest.xml\ with permissions, \proguard-rules.pro\, \.gitignore\).
feature/utilcode/pkg · high confidence
Add App and Flashlight demo activities
Added new demo activities for App and Flashlight utilities. The AppActivity displays app information (including minSdkVersion and targetSdkVersion) and provides actions to install, uninstall, launch, and exit applications. The FlashlightActivity allows users to toggle the device's flashlight, with a check to ensure the hardware is supported before proceeding.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/app · high confidence
Add DangerousActivity for testing dangerous system operations
A new DangerousActivity is introduced in the subutil package, providing a UI for testing potentially dangerous Android operations. This includes silent app installation and uninstallation, device rebooting (normal, recovery, bootloader), toggling mobile data, and sending silent SMS messages. The activity requests storage and SMS permissions and utilizes DangerousUtils to execute these high-risk actions.
feature/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/dangerous · high confidence
Add SubUtil demo app and feature modules
Introduces the SubUtil application and its associated feature modules, providing a demo interface for testing and demonstrating utility functions. The 'app' module defines the main entry point and activity, while the 'pkg' module contains the core implementation, including activities for App Store, Battery, Country, Dangerous permissions, Location, and Pinyin features. The 'export' module provides the public API interface for these features.
feature/subutil · high confidence
Add Vibrate demo activity
A new VibrateActivity has been added to the demo application, providing a user interface to test vibration functionality. The activity includes options to trigger a standard 1000ms vibration, a custom vibration pattern, a background vibration using the compatibility method, and a cancellation of the vibration. This serves as a practical example of how to use the VibrateUtils utility within the application.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/network, feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/phone, feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/vibrate · high confidence
Add base Android framework components
The lib/base module now includes foundational Android components: base classes for Activity, Fragment, and Application that provide common initialization, lifecycle management, and UI helper methods. The library also introduces an MVP architecture with BasePresenter, BaseModel, and BaseView classes to support Model-View-Presenter patterns. Additionally, a RecyclerView adapter framework is provided through BaseItem, BaseItemAdapter, and ItemViewHolder to simplify list implementations. The module also adds a BaseDialog and BaseDialogFragment for consistent dialog handling, along with a RecycleViewDivider for list separators and an EmptyGoneTextView that automatically hides itself when empty.
lib/base · high confidence
Add demo activities for clipboard and volume controls
Added new demo activities for the clipboard and volume features. The ClipboardActivity provides a UI to get, copy, clear, and listen for changes in the system clipboard. The VolumeActivity provides seek bars to adjust the volume for different audio streams (voice call, system, music, ring, alarm, notification, and DTMF).
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/clipboard, feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/volume · high confidence
Add device information demo activity
A new DeviceActivity is introduced in the device feature module, serving as a demo for the DeviceUtils utility. This activity displays various device attributes including root status, ADB status, SDK version, Android ID, MAC address, manufacturer, model, ABI, tablet status, emulator status, and unique device ID.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/device · high confidence
Add location demo activity and service
A new LocationActivity and LocationService have been added to the subutil package. The activity requests location permissions and binds to the service, which registers for location updates and reverse geocodes the current position to display the last and current latitude/longitude, country, locality, and street address in the UI.
feature/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/location · high confidence
Add new utility classes to the subutil library
Added multiple new utility classes to the lib/subutil module, including AppStoreUtils for managing app store intents, BatteryUtils for monitoring battery status, BitUtils for bitwise operations, CameraUtils for camera and image picking, CoordinateUtils for geographic coordinate conversions, CountryUtils for country codes, DangerousUtils for silent app installation/uninstallation, HttpsUtil for HTTP/HTTPS requests, LocationUtils for GPS and network location services, and LunarUtils for lunar calendar calculations. The AndroidManifest.xml was also added to define the package namespace.
lib/subutil/src/main · high confidence
Add status bar customization demos
Added new demo activities and fragments for customizing the Android status bar, including options for color, alpha (transparency), image views, and drawer integration. Users can now explore various status bar styling techniques such as setting colors, adjusting transparency, and applying custom backgrounds through the app's UI.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/status · high confidence
Added Android app and export module scaffolding
Introduced the Android application module and an export module to support the UtilCode library. The app module includes the main activity entry point and application class for testing and demonstration, while the export module provides a Java API interface for external integration. Both modules include standard build configuration files (.gitignore, proguard-rules.pro) and AndroidManifest.xml declarations.
feature/utilcode/app · high confidence
Added BusCompareActivity to compare EventBus and BusUtils performance
A new demo activity, BusCompareActivity, has been added to the bus feature. This screen provides a side-by-side performance comparison between the standard greenrobot EventBus and the project's internal BusUtils utility. Users can run benchmarks for registering/unregistering 10,000 subscribers and posting events to 1 or 100 subscribers, allowing them to observe the performance differences between the two implementations.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bus · high confidence
Added ClickActivity demo for click utilities
A new demo activity, ClickActivity, has been added to showcase various click utility functions. This includes applying pressed view scale, alpha, and background darkening effects, as well as implementing single and global click debouncing, and handling multi-click events with toast notifications.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/click · high confidence
Added Gradle plugin to automate README translation and formatting
A new Gradle plugin (\ReadmeCorePlugin\ and \ReadmeSubPlugin\) has been introduced to automate the generation of English README files from Chinese source files. The plugin defines a \readmeTask\ that processes \readmeCN\ and \readmeFile\ configurations, using \FormatUtils\ to parse and format content. Specifically, it extracts utility class documentation and usage instructions, translating and structuring them into a standardized English README format.
buildSrc/src/main/java · high confidence
Added LogActivity for LogUtils demo
A new LogActivity has been added to the log feature, providing a user interface to demonstrate and configure the LogUtils library. This includes toggles for log levels, console/file output, global tags, and file directory settings, allowing users to see how the logging utility behaves in practice.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/log · high confidence
Added MVP demo feature
Added a new MVP (Model-View-Presenter) demo feature, including the MvpActivity, MvpView, MvpPresenter, MvpModel, and MvpMvp interface, which demonstrates the use of the MVP pattern in the application.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/mvp · high confidence
Added PermissionActivity demo for Android permissions
A new PermissionActivity has been added to the application, providing a demo interface for requesting and managing Android permissions. The activity displays a list of available permissions and offers interactive controls to request access to Calendar, Microphone (Record Audio), and, on Android M and above, Write Settings and Draw Overlays. It also includes a button to open the app's settings and shows snackbar messages indicating whether each permission was granted or denied.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/permission · high confidence
Added Reflect demo activity and test class
Introduced a new ReflectActivity that demonstrates the usage of ReflectUtils by accessing private static final fields. The activity displays the original value, the reflected value, and the modified value in a list. A corresponding test class, TestPrivateStaticFinal, was added to provide the data for this demonstration.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/reflect · high confidence
Added SDCardActivity demo for storage utilities
A new SDCardActivity has been added to the utilcode feature, providing a demo interface for SDCardUtils. This activity displays key storage information, including SD card enablement status, paths, and size metrics for both external and internal storage.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/sdcard · high confidence
Added ShadowActivity demo for ShadowUtils
A new demo activity, ShadowActivity, has been added to showcase the usage of ShadowUtils. This activity demonstrates how to apply drop shadows to various view types, including rectangles, rounded rectangles, and circles, by configuring shadow colors and radii.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/shadow · high confidence
Added brightness and screen control demo activities
New demo activities for adjusting screen brightness and managing screen state (full-screen, landscape/portrait, screenshots) have been added. BrightnessActivity allows users to adjust system and window brightness via seek bars and toggle auto-brightness. ScreenActivity displays screen metrics (resolution, density, rotation) and provides controls to toggle full-screen mode, lock orientation to landscape or portrait, and capture screenshots.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/brightness, feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/screen · high confidence
Added convenience scripts for Android builds and Git workflows
Three new shell scripts have been added to the repository to streamline development and version control tasks. The 'gitHelp.sh' script provides an interactive menu to automate Git push and merge operations. The 'runDevDebug.sh' and 'runProductionRelease.sh' scripts automate the process of building and launching the Android application for debug and production release builds respectively, using Gradle and ADB commands.
script · high confidence
Added demo activities and fragments for Pinyin, Bar, and Fragment utilities
New demo activities and fragments have been added to showcase the Pinyin, Bar, and Fragment utilities. PinyinActivity demonstrates PinyinUtils for converting Chinese characters to pinyin and handling surnames. BarActivity provides a navigation hub for status bar, notification bar, and navigation bar demos, including color, alpha, image view, custom, fragment, drawer, and about screens. The Fragment feature introduces FragmentActivity with a bottom navigation bar to switch between three root fragments, each demonstrating various FragmentUtils operations such as adding, hiding, showing, replacing, and popping fragments, as well as shared element transitions and back press handling.
feature/subutil/pkg/src/main/java/com/blankj/subutil/pkg/feature/pinyin, feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar, feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/fragment · high confidence
Added demo activities for AppStore, Country, Path, Process, Resource, and Rom utilities
Six new demo activities have been added to the application, each exposing a specific utility class for user interaction. AppStoreActivity demonstrates opening the system app store; CountryActivity displays country codes and names via CountryUtils; PathActivity lists various internal and external storage paths using PathUtils; ProcessActivity shows foreground/background process information and allows killing background processes via ProcessUtils; ResourceActivity demonstrates reading assets/raw resources and copying files via ResourceUtils; and RomActivity displays ROM name and version using RomUtils. These activities provide interactive examples of the underlying utility functions.
(repo-wide) · high confidence
Added demo activities for Bus, File, Language, and Messenger utilities
The app now includes new demo activities that showcase the functionality of several utility classes. Users can explore the Bus system (including sticky messages and IO thread handling) via the new BusActivity. The FileActivity demonstrates file existence checks across various system and app-specific paths. The LanguageActivity allows users to test language application and system language retrieval. Finally, the MessengerActivity and its remote counterpart demonstrate inter-component messaging and remote client communication. These additions provide interactive examples for developers and users to understand how these specific utility features work within the application.
base-transform · high confidence
Added main app entry point and main activity UI
The diff introduces the Android application entry point (MainApp) and the main activity (MainActivity) for the 'main' feature. This includes the AndroidManifest configuration for the app and its activities, the Java-based MainApp class, and the Kotlin-based MainActivity with its layout (activity\_main.xml) and string resources. The main activity displays a list of items (likely utility modules) and manages the navigation drawer.
feature/main · high confidence
Added mock implementations for SubUtil and UtilCode APIs
New mock implementations for SubUtil and UtilCode APIs have been added to the feature/mock module. These classes, SubUtilApiMock and UtilCodeApiMock, provide simplified, non-functional versions of the original APIs, likely for testing or development purposes. The module also includes a basic AndroidManifest and ProGuard rules.
feature/mock · high confidence
Added new utility classes for threading, memory caching, reflection, and UI messaging
The library introduces several new utility classes to enhance Android development capabilities. ThreadUtils provides a comprehensive set of thread pool management methods (fixed, single, cached, IO, and CPU pools) and main-thread execution helpers. CacheMemoryUtils offers a thread-safe, time-expiring memory cache based on LruCache. ReflectUtils simplifies Java reflection operations, including dynamic instantiation with constructor matching. UiMessageUtils implements a Handler-based message bus for UI-thread-safe event broadcasting, serving as a replacement for LocalBroadcastManager. Additionally, ExecutorFactory provides pre-configured Executors for HTTP and main-thread operations, while SpanUtils enables advanced text styling on TextViews.
. · high confidence
Added notification demo activity and debug utility stubs
A new NotificationActivity has been added to the UtilCode feature, providing a demo interface for testing NotificationUtils methods such as sending, canceling, and showing notifications. Additionally, a new no-op debug library (lib/utildebug-no-op) was introduced, containing stub implementations for DebugUtils and the IDebug interface, which serve as placeholders for debug functionality.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/notification, lib/utildebug-no-op · high confidence
Added screen adaptation demo activities
The app now includes four new activities in the adaptScreen feature: AdaptScreenActivity, which serves as a menu for the other three; AdaptWidthActivity, which demonstrates width-based screen adaptation; AdaptHeightActivity, which demonstrates height-based screen adaptation; and AdaptCloseActivity, which disables screen adaptation. These activities utilize the AdaptScreenUtils to apply specific screen adaptation logic and are accessible through the main demo interface.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/adaptScreen · high confidence
Initial project scaffolding and documentation
The repository is initialized with essential project files, including a .gitignore configuration, the Apache 2.0 license, and both English and Chinese README documentation. The diff also introduces the Gradle wrapper scripts (gradlew, gradlew.bat) and a module configuration file (module\_config.json) that defines the project's multi-module architecture, including plugins, features, and library modules.
(repo-wide) · high confidence
Initial release of the UtilCode Android utility library
The library introduces a comprehensive suite of utility classes for Android development, including ActivityUtils for managing activity lifecycles and states, AppUtils for application information and status, BarUtils for status bar and navigation bar customization, and AdaptScreenUtils for screen adaptation. The release also adds constant definitions for cache, memory, permissions, regex, and time units, alongside foundational utilities like ArrayUtils, BusUtils, and ApiUtils.
lib/utilcode/src/main/java · high confidence
Introduce API plugin for automatic implementation injection
A new Gradle plugin named 'api' has been added to the project. This plugin scans for classes annotated with a specific API marker, identifies their implementations, and automatically injects registration code into a designated utility class. The plugin supports configuration via an extension block (e.g., specifying the target utility class, regex patterns for scanning libraries, and error handling), and generates a JSON report of API implementations and missing ones. It uses ASM to modify bytecode, allowing for seamless integration of API implementations without manual boilerplate.
plugin/api-gradle-plugin/src/main · high confidence
Introduce BusUtils event bus plugin and base-transform library
Adds the \bus-gradle-plugin\ to enable compile-time event bus registration for \BusUtils\, allowing developers to annotate methods with \@BusUtils.Bus\ and automatically generate registration code. The plugin scans classes, extracts method signatures and metadata (tag, sticky, thread mode, priority), and injects calls to \BusUtils.registerBus\ into the target class. It also introduces a \base-transform\ library that provides a reusable \BaseTransformPlugin\ abstract class and utility classes (e.g., \JsonUtils\, \ZipUtils\) to simplify the implementation of Gradle transform plugins. A test suite (\BusTest\) is included to verify the injection logic.
plugin/bus-gradle-plugin · high confidence
Introduce common UI components and base classes
The lib/common module now includes a suite of reusable UI components and base classes for Android development. This includes a base Application and Activity class (CommonApplication, CommonActivity) that provide a standard template for managing titles, item lists, and drawers. The update also introduces a set of RecyclerView item types (CommonItem, CommonItemClick, CommonItemImage, CommonItemTitle, CommonItemSwitch, CommonItemSeekBar) for building list-based interfaces, along with dialog implementations (CommonDialogContent, CommonDialogLoading) and a permission handling helper. Additionally, custom views like RotateView and various resource files (layouts, drawables, animations) are added to support these components.
lib/common · high confidence
Introduce debug utility library for floating UI overlays and list management
Added the \lib/utildebug\ module, a new debug utility library that provides floating views (such as a debug icon and toast messages) and RecyclerView item management. The library includes base classes for floating views, content views, and item adapters, along with helper classes for drawables, view finders, and configuration storage.
lib/utildebug · high confidence
New API demo activity and implementation classes
Added a new ApiActivity that serves as a demo for the ApiUtils framework, featuring two interactive list items: one that invokes a method with parameters and another that invokes a method returning a value. This activity is supported by the new OtherModuleApi abstract class and its concrete implementation OtherPkgApiImpl, which demonstrate how to use the ApiUtils annotation-based API invocation mechanism.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/api · high confidence
New Image Activity for ImageUtils Demos
A new ImageActivity has been added to the image feature module, providing a comprehensive demo interface for the ImageUtils class. This activity allows users to preview and interact with various image processing operations, including saving images, scaling, clipping, skewing, rotating, rounding corners, adding borders, applying watermarks, converting to grayscale, and applying blur effects. The UI is populated with image previews for each operation, enabling users to see the results of transformations like adding reflection, text/image watermarks, and different blur types (RenderScript, Stack) directly within the app.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/image · high confidence
Release of Android UtilCode v1.31.1 and introduction of Subutil
The Android UtilCode library has been updated to version 1.31.1, which includes the addition of \AppUtils\ methods \getAppMinSdkVersion\ and \getAppTargetSdkVersion\ to retrieve application SDK versions. Additionally, a new \subutil\ module has been introduced, providing a collection of utility classes for app store interactions, battery status monitoring, coordinate system conversions, country detection, system-level operations (such as silent installation and rebooting), location services, and pinyin conversion. The release also includes updated documentation and ProGuard rules for both the main \utilcode\ and the new \subutil\ modules.
lib/utilcode · high confidence
Architecture
Introduce Gradle-based build system and modular architecture
The project has been restructured to use a Gradle-based build system, replacing the previous build configuration. This includes new top-level and module-specific build scripts (build.gradle, buildApp.gradle, buildCommon.gradle, buildLib.gradle) that define repositories, dependencies, and build types. A new modular architecture is introduced, with separate modules for features (launcher, main, subutil, utilcode), libraries (base, common, subutil, utilcode, utildebug, utildebug-no-op), and plugins (api, buildSrc, bus, base-transform). The build system supports product flavors (dev, production) and includes configuration for publishing to Maven Central and local repositories. Additionally, the project now uses a JSON-driven module configuration (module\_config.gradle) to dynamically include modules based on application and package configurations.
(dependencies) · high confidence
Behavioural changes
Add navigation bar transparency control to BarUtils
The BarNavActivity demo page now includes a 'transparentNavBar' option that allows users to toggle the transparency of the navigation bar. This change introduces the \BarUtils.transparentNavBar\ method, enabling developers and users to customize the navigation bar's appearance by making it transparent.
feature/utilcode/pkg/src/main/java/com/blankj/utilcode/pkg/feature/bar/nav · high confidence
Added Gradle wrapper configuration for version 6.7.1
A new Gradle wrapper configuration file has been added to the project, establishing the use of Gradle version 6.7.1. This change ensures that all developers and build environments use the same, specific version of the Gradle build tool, improving consistency and reproducibility across the project's build process.
gradle · high confidence
Added keystore configuration for app signing
A new keystore configuration file has been added to the sign directory, defining the keystore file path and associated passwords for the 'utilcode' alias, enabling the automated signing of the application.
sign · high confidence
Automated build configuration generation from config.json
The build system now automatically generates Gradle module and dependency configurations based on a local config.json file. This change introduces a new Gradle plugin (BuildSrcPlugin) and a configuration processor (ModuleCfg) that reads project settings from config.json to dynamically include local modules and generate corresponding Groovy source code, ensuring the build structure stays in sync with the central configuration file.
plugin/buildSrc-plugin · high confidence
Centralized build configuration and build-time tracking
The build system now uses a centralized Groovy-based configuration to manage module dependencies, plugin application, and library versions. This change introduces new classes (Config, ConfigUtils, ModuleConfig, PluginConfig, LibConfig) that define which modules and plugins are applied locally or remotely, and standardizes dependency resolution. Additionally, a new TaskDurationUtils component has been added to track and log the execution time of Gradle tasks, outputting a sorted list of the slowest tasks upon build completion.
buildSrc/src/main/groovy · high confidence
Test coverage
Added test resource files for file and zip utilities; Added unit tests for the API plugin's bytecode manipulation logic; Added unit tests for utility classes.
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.
Score
- CAI 50 → 51 (+1.1)
- Rubric changed (rubric-2026.08.18 → rubric-2026.08.19) — scores are not directly comparable.
Lenses
- Code Health 76 → 76 (+0.0)
- Architecture 100 → 100 (+0.0)
- Maturity 46 → 46 (+0.0)
- Readiness 47 → 47 (+0.0)
- Security 44 → 47 (+2.8)
Resolved (5)
- LLM evaluation failed
- Medium: security finding (details withheld)
- Medium: security finding (details withheld)
- Medium: security finding (details withheld)
- Medium: security finding (details withheld)
New (1)
- The About section names 'utilcode' as a commonly-used module but does not mention where subutil lives or its rare-use role in the README. (README.md)
Architecture
- Containers 0 added · 0 removed · contexts 1 added · 1 removed · edges 0 added · 0 removed
Added bounded contexts (1)
- .
Removed bounded contexts (1)
- .
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
Blankj/AndroidUtilCode was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 6 August 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 7b4caf9e5440046b3fefb63b6b6e2ead7ebaf809 — the exact code this score is about.
- Scored under rubric-2026.08.19 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer latest.