← Back to Blankj/AndroidUtilCode

How to Deploy & Use Blankj/AndroidUtilCode

AndroidUtilCode Deployment and Usage Guide

Prerequisites

  • Android Studio (latest stable version recommended)
  • Android SDK with API level 14 or higher
  • Java Development Kit (JDK) 8 or higher
  • Gradle (included with Android Studio)

Installation

Option 1: Adding as a dependency to your Android project

  1. Open your Android project in Android Studio
  2. Add the following to your build.gradle (Module: app) file:
dependencies {
    implementation 'com.blankj:utilcode:1.30.7'
}
  1. Sync your project with Gradle files

Option 2: Cloning the repository

git clone https://github.com/Blankj/AndroidUtilCode.git
cd AndroidUtilCode

Configuration

Permissions (if using specific utilities)

Some utilities require specific permissions. Add these to your AndroidManifest.xml:

<!-- For network-related utilities -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />

<!-- For file utilities -->
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

ProGuard/R8 Configuration

Add these rules to your proguard-rules.pro file:

-keep class com.blankj.utilcode.** { *; }
-keepclassmembers class com.blankj.utilcode.** { *; }

Build & Run

Building the library

  1. Open the project in Android Studio
  2. Navigate to lib/utilcode module
  3. Build the module:
    • Build → Make Module 'utilcode'
    • Or use Gradle: ./gradlew :utilcode:build

Running tests

./gradlew test

Using in your project

// Import the utility class you need
import com.blankj.utilcode.util.StringUtils;

// Use the utility
String result = StringUtils.isEmpty("test"); // Returns false

Deployment

This library is designed to be included as a dependency in your Android projects. No separate deployment is needed.

Distribution options

  1. Maven Central (already configured in the project)
  2. JCenter (deprecated but still functional)
  3. Local Maven repository for internal use

To publish to Maven Central, you'll need:

  1. Sonatype account (OSSRH)
  2. GPG keys for signing
  3. Configure gradle.properties with your credentials

Troubleshooting

Common Issues

1. Build fails with "Could not find com.blankj:utilcode"

Solution: Check your Gradle configuration and internet connection. Add Maven Central repository if missing:

repositories {
    mavenCentral()
}

2. Permission denied errors

Solution: Ensure you've added the required permissions in AndroidManifest.xml for the specific utilities you're using.

3. ProGuard obfuscation breaks utilities

Solution: Add the ProGuard rules mentioned in the Configuration section.

4. API level compatibility issues

Solution: This library supports API level 14+. If you're targeting lower APIs, you'll need to upgrade your minSdkVersion.

5. Duplicate class errors

Solution: Check for conflicting dependencies. This library includes utility classes that might conflict with other utility libraries.

Getting Help

Performance Tips

  • Only import the specific utilities you need rather than the entire library
  • Consider using ProGuard/R8 to remove unused code
  • For frequently used utilities, consider creating wrapper methods specific to your app's needs