투케이2K

559. (ios/swift5) [간단 소스] AppDelegate 앱 딜리게이트 applicationWillTerminate 등록 및 작업 목록 태스크 삭제 이벤트 감지 본문

IOS

559. (ios/swift5) [간단 소스] AppDelegate 앱 딜리게이트 applicationWillTerminate 등록 및 작업 목록 태스크 삭제 이벤트 감지

투케이2K 2024. 10. 24. 20:00

[개발 환경 설정]

개발 툴 : XCODE

개발 언어 : SWIFT5

 

[소스 코드]

 

// --------------------------------------------------------------------------------------
[개발 및 테스트 환경]
// --------------------------------------------------------------------------------------

- 언어 : Swift

- 개발 툴 : Xcode

- 구분 : Task Delete

- 간단 설명 : applicationWillTerminate 함수는 앱 종료 시점 이벤트를 콜백으로 응답 받을 수 있습니다

// --------------------------------------------------------------------------------------






// --------------------------------------------------------------------------------------
[소스 코드]
// --------------------------------------------------------------------------------------

import UIKit
import AVFoundation

@main
class AppDelegate: UIResponder, UIApplicationDelegate {
    
    
    // MARK: - [클래스 설명]
    /*
    // -----------------------------------------
    1. 애플리케이션 딜리게이트
    // -----------------------------------------
    */
    
    
    
    
    
    // MARK: - [전역 변수 선언 실시]
    var window: UIWindow? // [ios 13 미만 버전 제어 위해 선언]



    
    
    // MARK: - [앱 프로세스 완료 및 앱 실행 실시]
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        print("")
        print("====================================")
        print("[AppDelegate >> didFinishLaunchingWithOptions]")
        print("-------------------------------")
        print("설 명 :: 앱 프로세스 완료 및 앱 실행 실시")
        print("====================================")
        print("")
        
        // -----------------------------------------
        return true
        // -----------------------------------------
    }



    
    

    // MARK: - [Scene 만들기 위한 구성 객체 반환 : 스토리보드 , info]
    @available(iOS 13.0, *)
    func application(_ application: UIApplication, configurationForConnecting connectingSceneSession: UISceneSession, options: UIScene.ConnectionOptions) -> UISceneConfiguration {
        print("")
        print("====================================")
        print("[AppDelegate >> configurationForConnecting]")
        print("-------------------------------")
        print("설 명 :: Scene 만들기 위한 구성 객체 반환 : 스토리보드 , info")
        print("====================================")
        print("")

        return UISceneConfiguration(name: "Default Configuration", sessionRole: connectingSceneSession.role)
    }

    
    
    
    
    // MARK: - [Scene 구성 객체 해제 실시]
    @available(iOS 13.0, *)
    func application(_ application: UIApplication, didDiscardSceneSessions sceneSessions: Set<UISceneSession>) {
        print("")
        print("====================================")
        print("[AppDelegate >> didDiscardSceneSessions]")
        print("-------------------------------")
        print("설 명 :: Scene 구성 객체 해제 실시")
        print("====================================")
        print("")
    }
    
    
    
    
    
    // MARK: - [애플리케이션 사용자가 작업 태스크 날린 이벤트 감지]
    func applicationWillTerminate(_ application: UIApplication) {
        print("")
        print("====================================")
        print("[AppDelegate >> applicationWillTerminate]")
        print("-------------------------------")
        print("설 명 :: 애플리케이션 사용자가 작업 태스크 날린 이벤트 감지")
        print("====================================")
        print("")
        
    }
    
    
    
    
    
    // MARK: - [디바이스 화면 세로 모드 고정 실시]
    func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask {
        print("")
        print("====================================")
        print("[AppDelegate >> supportedInterfaceOrientationsFor]")
        print("-------------------------------")
        print("설 명 :: 디바이스 화면 세로 모드 고정 실시")
        print("====================================")
        print("")
        
        // [세로 방향 고정]
        return UIInterfaceOrientationMask.portrait
    }
    

} // [클래스 종료]

// --------------------------------------------------------------------------------------






// --------------------------------------------------------------------------------------
[참고 사이트]
// --------------------------------------------------------------------------------------

[애플 디벨로퍼 사이트]

https://developer.apple.com/documentation/uikit/uiapplicationdelegate/1623111-applicationwillterminate


[AppDelegate - 애플리케이션 프로세스 관리 클래스]

https://blog.naver.com/kkh0977/222684445774?trackingCode=blog_bloghome_searchlist

// --------------------------------------------------------------------------------------

 

반응형
Comments