Delphi Android – how take screenshot of entire screen programmatically?

  

I need the code that allowed my to take screenshots programmatically in Delphi. Here is the sulotion:
How to programmatically take a screenshot on Android?
How can i do this in delphi android app? This is my code but only capture Tcontrols not android screen.
function MakeScaleScreenshot(Sender:TControl): TBitmap;
var
fScreenScale: Single;

function GetScreenScale: Single;
var
ScreenService: IFMXScreenService;
begin
Result := 1;
if TPlatformServices.Current.SupportsPlatformService (IFMXScreenService, IInterface(ScreenService)) then
begin
Result := ScreenService.GetScreenScale;
end;
end;

begin
fScreenScale := GetScreenScale;
Result := TBitmap.Create(Round(Sender.Width*fScreenScale), Round(Sender.Height*fScreenScale));
Result.Clear(0);
if Result.Canvas.BeginScene then
try
Sender.PaintTo(Result.Canvas, RectF(0,0,Result.Width,Result.Height));
finally
Result.Canvas.EndScene;
end;
end;

Comments are closed.