Wallpaper APIs

Overview

The Smart Launcher Wallpaper API is an experimental Android library that lets third‑party apps notify Smart Launcher about the wallpaper a user has selected. It handles temporary file storage, permission management, and metadata sharing so you can integrate without additional manifest setup or custom providers.

Benefits for Developers

  • Advanced visual effect – Smart Launcher will be able to apply dynamic blur effects and other enhancements to the wallpapers you supply, ensuring the launcher showcases your content at its best.

Before
After

  • Built‑in attribution – When users share their setups, Smart Launcher preserves your metadata (author, source, link) so you receive proper credit. This attribution flows through to social posts, helping your work reach new audiences.

Before
After

Quick Implementation Guide

1

Add the dependency

dependencies {
    implementation("net.smartlauncher:wallpaper-api:0.0.4")
}
2

Go to the code that you use to apply your wallpapers

Before setting the code via WallpaperManager, call SmartLauncherWallpaperApi.saveWallpaper


if(/* do not run if you are only changing the lockscreen wallpaper */){
    val result = SmartLauncherWallpaperApi.saveWallpaper(
        context = context,
        bitmap = wallpaperBitmap, // also Uri is supported
        metadata = SmartLauncherWallpaperApi.Metadata(
            author = "Jane Doe",
            link = "https://example.com/wallpaper/42",
            source = "Example App"
        )
    )
    // result is an enum, it will help you debugging possible issues
}

WallpaperManager.getInstance(this).setBitmap(bitmap)
3

You are done!

How to test it

  1. Verify you are running Smart Launcher 6.5.38 or higher

  2. Launch your code, ensure SmartLauncherWallpaperApi.saveWallpaper returns Success

  3. From Smart Launcher, open preferences, then select Show your home screen.

✅ If you see your current setup, the integration is working! Now, if you populated the metadata field, you should see them as part of the body text when you press the Share button.

🚨 If you get an error after selecting Show your home screen, something is wrong. Contact us for assistance.

Experimental Status

This library is still experimental. APIs and behavior may change, and backward compatibility is not guaranteed yet. We welcome feedback and issue reports to help stabilize the interface.


Library release notes

0.0.4

The library now uses WebP under the hood for improved performance

0.0.3

Initial public release

Last updated

Was this helpful?