iOS 앱을 개발할 때, 앱이 시작될 때 실행되는 특정한 메서드를 구현해야 합니다. 이 메서드를 사용하여 앱이 로드되고 초기화되는 과정을 처리할 수 있습니다. 이번 포스팅에서는 Swift 언어로 앱 시작 시 호출되는 메서드에 대해 알아보겠습니다.
AppDelegate.swift 파일
앱 시작 시 호출되는 메서드는 AppDelegate.swift 파일에 구현됩니다. AppDelegate는 앱의 생명주기를 관리하는 클래스입니다. @UIApplicationMain
어노테이션이 있는 클래스이며, 앱의 중심적인 역할을 담당합니다.
didFinishLaunchingWithOptions 메서드
앱이 시작될 때 호출되는 주요 메서드는 didFinishLaunchingWithOptions
입니다. 이 메서드는 앱이 처음 실행될 때 호출되며, 앱의 초기화 및 설정 작업을 수행하는 데 사용됩니다. 이 메서드는 앱의 델리게이트인 AppDelegate 클래스 내부에 정의되어야 합니다.
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// 앱 초기화 및 설정 작업 수행
return true
}
launchOptions
didFinishLaunchingWithOptions
메서드의 두 번째 파라미터인 launchOptions
는 앱이 런칭될 때 전달되는 옵션들을 포함한 딕셔너리입니다. 이를 사용하여 앱이 특정 상황에서 실행된 경우에 대한 처리를 할 수 있습니다. 예를 들어, 푸시 알림을 통해 앱이 실행된 경우 또는 URL scheme을 통해 앱이 실행된 경우 등의 상황에서 이 옵션을 활용할 수 있습니다.
반환값
didFinishLaunchingWithOptions
메서드는 Bool
값을 반환해야 합니다. 만약 true
를 반환하면 앱이 정상적으로 시작되었음을 의미하며, false
를 반환하면 앱이 시작되지 않음을 의미합니다.
예제 코드
import UIKit
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// 앱 초기화 및 설정 작업 수행
// 예제: 앱 실행 시 화면에 로그 출력
print("앱이 시작되었습니다.")
return true
}
//...
}
이제 앱이 시작될 때마다 “앱이 시작되었습니다.”라는 로그가 출력됩니다.