새로운 글
새로운 덧글

애플리케이션 이벤트핸들러를 등록하면 앱의 라이프 사이클 이벤트를 수신할 수 있습니다.


먼저 상단(interface) uses절에 FMX.Platform을 추가 후 이벤트 수신 용 이벤트를 아래와 같이 작성합니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function TForm1.AppEventHandler(AAppEvent: TApplicationEvent;
  AContext: TObject): Boolean;
begin
  Result := False;
  case AAppEvent of
    TApplicationEvent.FinishedLaunching: Log.d('FinishedLaunching');
    TApplicationEvent.BecameActive: Log.d('BecameActive');
    TApplicationEvent.WillBecomeInactive: Log.d('WillBecomeInactive');
    TApplicationEvent.EnteredBackground: Log.d('EnteredBackground');
    TApplicationEvent.WillBecomeForeground: Log.d('WillBecomeForeground');
    TApplicationEvent.WillTerminate: Log.d('WillTerminate');
    TApplicationEvent.LowMemory: Log.d('LowMemory');
    TApplicationEvent.TimeChange: Log.d('TimeChange');
    TApplicationEvent.OpenURL: Log.d('OpenURL');
  end;
end;

메인 폼 생성 시 이벤트 핸들러를 등록(SetApplicationEventHandler)합니다.

1
2
3
4
5
6
7
8
9
procedure TForm1.FormCreate(Sender: TObject);
var
  AEService: IFMXApplicationEventService;
begin
  if TPlatformServices.Current.SupportsPlatformService(IFMXApplicationEventService, IInterface(AEService)) then
  begin
    AEService.SetApplicationEventHandler(AppEventHandler);
  end;
end;

아래 이벤트를 참고해 필요한 항목에 이벤트 발생 시 코드를 추가하세요.


애플리케이션 이벤트 플랫폼 별 지원 여부

 이벤트

 설명

 안드로이드 지원

 iOS 지원

 BecomeActive

 애플리케이션이 활성화 되었습니다.

 지원

 지원 

 EnteredBackground

 애플리케이션이 백그라운드로 진입했습니다.

 지원

 지원

 FinishedLaunching

 애플리케이션이 시작되었습니다.

 지원

 지원

 LowMemory

 디바이스 메모리가 부족하다는 경고입니다. 내부 메모리 사용량을 줄이세요.

 지원

 지원

 OpenURL

 url 요청을 받았습니다.

 X

 지원

 TimeChange

 시간에 큰 변화가 발생. 하루가 바뀐 경ㅇ나 서머타임이 시작 또는 끝난 경우 발생

 X

 지원

 WillBecomeForeground

 백그라운드의 애플리케이션이 활성화 되었습니다.

 지원

 지원

 WillBecomeInactive

 다른 애플리케이션이 활성화 되었습니다.

 지원

 지원

 WillTerminate

 사용자가 애플리케이션을 종료합니다.

 지원

 지원


안드로이드 라이프사이크

http://developer.android.com/reference/android/app/Activity.html


iOS 라이프사이크


https://developer.apple.com/library/ios/documentation/iphone/conceptual/iphoneosprogrammingguide/ManagingYourApplicationsFlow/ManagingYourApplicationsFlow.html


참고 글

번호 제목 글쓴이 날짜 조회 수
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 246
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 4154
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 822
공지 [프로그래밍 강의] 2018.10 ~ 2018.12 관리자 2015.01.22 6831
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 관리자 2015.06.30 11971
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2018년 09월 업데이트 됨) 험프리 2014.01.16 149070
109 [무료 제공툴] 파이어몽키 스텐실(FMX Stencils) [3] 관리자 2018.08.24 503
108 10.2.3 새로운 기능: 파이어몽키 UI 템플릿 - 프로필 화면 관리자 2018.04.24 330
107 TFrame의 생성 및 해제를 편하게 해주는 TFrame 관리 클래스입니다.. file 푸른솔 2017.12.15 395
106 [개발자 Tip] 모바일 앱 개발 시 시간 낭비를 줄이는 Tip #1: 테스트하기 위해 기다리는 시간을 줄인다. 관리자 2016.12.26 480
105 [XE8] 모바일 튜토리얼 무료 다운로드(영문), 총 364페이지 관리자 2015.07.09 1172
104 [XE8] 스피드버튼의 이미지를 크게 표시할 수 있습니다. Humphery 2015.06.04 481
103 앱의 상태바(StatusBar) 제어하기(색상변경, 감추기, 투명하게) Humphery 2015.06.04 1400
102 파이어몽키에서 외부 라이브러리 연동하기(jar, so, a) [3] Humphery 2015.04.14 2047
101 [XE8] Android 단말기 연결안될때 SDK 확인 및 설치 Humphery 2015.04.11 1606
» 모바일 앱 라이프사이클 이벤트 처리하기 Humphery 2015.04.09 1046
99 모바일 앱 라이프 사이클 이벤트 처리하기(앱 완전 구동 후 실행하기) [1] Humphery 2015.04.09 656
98 [XE7] iOS 시뮬레이터 배포 시 'Please specify exact device preset UUID.' 오류 대응 Humphery 2015.02.26 1305
97 안드로이드 하드웨어 백버튼 제어하기 Humphery 2015.02.25 1459
96 파이어몽키 용 그리드 컴포넌트 안내 - FirePower Humphery 2015.02.23 1157
95 [Android] 폰번호 가져오기 [1] 타락천사 2014.09.05 19545
94 안드로이드 각종 설정값 제어 예제. c2design 2014.08.14 1749
93 Find the O/S Language Type c2design 2014.07.30 1459
92 QR 코드를 만들고 스캔(읽는) 방법 Humphery 2014.07.24 4295
91 GPS좌표 이용 날씨정보앱 런칭. file c2design 2014.07.15 2292
90 모바일 Bluetooth 연동 자료 Humphery 2014.06.24 5912


광고 모듈이 설치되어 있지 않아 실행을 중단합니다..