iOS 14 WidgetKit에서 애플리케이션이 시작되었는지 확인


작업 환경

  • Xcode 12.0 (12A7208)
  • iOS 14.0
  • 방법


    몇 가지가 있는데 이번에는 application(_:continue:restorationHandler:) 판별 방법을 소개해 드릴게요.
    호스트 애플리케이션 AppDelegate.swift를 통해 다음과 같은 판정을 할 수 있습니다.
    func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
        if userActivity.activityType == "WidgetExtension" {
            print("Launched from WidgetKit!")
        }
        return true
    }
    
    WidgetExtension 부분은 애플리케이션에 따라 다를 수 있습니다.시험이 없으니까 아시는 분 있으면 알려주세요.
    또한 원본 부품을 시작하는 정보는 userInfoWidgetCenter.UserInfoKey를 통해 얻을 수 있습니다.
    Optional("[AnyHashable(\"WGWidgetUserInfoKeyKind\"): WidgetExtension, AnyHashable(\"WGWidgetUserInfoKeyFamily\"): systemMedium]")
    
    작은 부품의 사이즈(중대)를 찾을 수 있습니다.

    참조 링크


  • Detect app launch from WidgetKit widget extension - 다른 판별 방법도 있다.
  • 좋은 웹페이지 즐겨찾기