androidlive-wallpaper

Setting live wallpaper programmatically


Is it possible to set a live wallpaper using some lines of code. For example, i want to tell my users that a live wallpaper is available "click here to set it".


Solution

  • Alright, just so I stop getting downvotes for an outdated answer. Please see Error 454's answer below for a more robust solution which will send the user directly to the wallpaper preview screen on Jelly Bean and up devices.

    ========================================

    Here's how to start the wallpaper chooser, from which the user can select your wallpaper. The toast is just a way to explain to the user what's going on.

    Toast toast = Toast.makeText(this, "Choose '<WALLPAPER NAME>' from the list to start the Live Wallpaper.",Toast.LENGTH_LONG);
    toast.show();
    
    Intent intent = new Intent();
    intent.setAction(WallpaperManager.ACTION_LIVE_WALLPAPER_CHOOSER);
    startActivity(intent);