Есть ли что-то, что можно проверить с точки зрения кода при возобновлении работы приложения на iOS и Android?
например когда приложение сворачивается и восстанавливается (приложение все еще работает в фоновом режиме устройства).
Есть ли что-то, что можно проверить с точки зрения кода при возобновлении работы приложения на iOS и Android?
например когда приложение сворачивается и восстанавливается (приложение все еще работает в фоновом режиме устройства).
Вам нужно использовать IFMXApplicationEventService, чтобы зарегистрировать обратный вызов, в котором приложение будет получать уведомления:
uses FMX.Types, FMX.Platform;
function TForm1.HandleAppEvent(AAppEvent: TApplicationEvent; AContext: TObject): Boolean;
begin
case AAppEvent of
TApplicationEvent.FinishedLaunching: Log.d('Launched.');
TApplicationEvent.BecameActive: Log.d('Gained focus.');
TApplicationEvent.EnteredBackground: Log.d('Now running in background.');
TApplicationEvent.WillBecomeForeground: Log.d('Restoring from background.');
TApplicationEvent.WillBecomeInactive: Log.d('Going to lose focus.');
TApplicationEvent.WillTerminate: Log.d('Quitting the application.');
TApplicationEvent.LowMemory: Log.d('Device running out of memory.');
// iOS only
TApplicationEvent.TimeChange: Log.d('Significant change in time.');
TApplicationEvent.OpenURL: Log.d('Request to open an URL.');
end;
Result := True;
end;
procedure TForm11.FormCreate(Sender: TObject);
var
aFMXApplicationEventService: IFMXApplicationEventService;
begin
if TPlatformServices.Current.SupportsPlatformService(IFMXApplicationEventService,
IInterface(aFMXApplicationEventService))
then
aFMXApplicationEventService.SetApplicationEventHandler(HandleAppEvent)
else
Log.d('Application Event Service not supported.');
end;
Подробнее о типах событий здесь.
хорошая статья по теме Paweł Głowacki (для Delphi XE5, но все равно полезно).
В iOS вы можете добавить флаг в
applicationDidEnterBackground
в appDelegate, чтобы узнать, входит ли пользователь в фоновый режим и,
applicationDidBecomeActive
чтобы знать, что пользователь возвращается в приложение из фона