I used to be able to set a wallpaper bitmap without scrolling using this (incorrect) code below:
int deviceWidth = ...;
int deviceHeight = ...;
Bitmap bmp = new Bitmap(deviceWidth, deviceHeight);
...
WallpaperManager wm = WallpaperManager.getInstance(context);
wm.setWallpaperOffsetSteps(1, 1);
wm.suggestDesiredDimensions(deviceWidth, deviceHeight;
wm.setBitmap(bmp);
but the developer docs now point out that we shouldn't be calling suggestDesiredDimensions() unless we're a homescreen replacement app. Which I'm not. And this doesn't work on my nexus 5 either.
After searching through SO posts, it seems like the recommended way to create a wallpaper that doesn't scroll is to add Live Wallpaper support to your app. You can set your live wallpaper up to not scroll. See the last answer for setting it programmatically here:
Setting live wallpaper programmatically
Is this the right way to do it, or am I missing a much simpler way to go about this?