Here's a way to Set the wallpaper.don't know how right or wrong it is).
Live wallpaper is not to much different, so this is a starting point
1. Use Java2op to generate the delphi bridge files of all the wallpaper classes.
2 New Fmx poject
3. Add the units to your uses clause along with:
4. place the following on the form:
Button1: TButton;
Image1: TImageViewer;
5. Load an image into Image1 in design time. and set Button1 onclick to below.
procedure TForm1.Button1Click(Sender: TObject);
Var
FWallpaperManager:jwallpapermanager;
Factoryoptions: JBitmapFactory_Options;
aScreenSize: TPoint;
Widthofscreen, Heightofscreen: Integer;
FFiletoopen:String;
begin
{Create a filename to save the image to}
FFiletoopen:=System.IOUtils.TPath.Combine(System.IOUtils.tpath.getdocumentspath,'Thefile.jpg');
{Save the image}
Image1.Bitmap.savetofile(FFiletoopen);
{Create JBitmap options }
Factoryoptions:=TJBitmapFactory_Options.Create;
{Read up on these in the android API}
Factoryoptions.inJustDecodeBounds := true;
Factoryoptions.inPreferQualityOverSpeed:=True;
Factoryoptions.inJustDecodeBounds := false;
{Get the wallpaper manager instance}
FWallpaperManager:=tjwallpapermanager.Wrap((SharedActivityContext.getSystemService
(TJContext.JavaClass.WALLPAPER_SERVICE) as ILocalObject).GetObjectID);
{Load the image we saved}
TheBitmaptoShow:=Tjbitmapfactory.JavaClass.decodeFile(StringToJString(FFiletoopen),Factoryoptions);
{Only change the wallpaper if the Bitmap loads}
if TheBitmaptoShow <>NIL then
Begin
{Set the Wallpaper}
FWallpaperManager.setBitmap(TheBitmaptoShow);
End;
end;
Head over and see the post on the Embarcadero forum for Delphi XE7 Firemonkey on Android.