エラー・警告の対応【App Delegate does not conform to UIApplicationDelegate protocol.】

以下のエラー(警告)が発生した時の対応について解説します。

App Delegate does not conform to UIApplicationDelegate protocol.

SfiftUIライフサイクルの中でFirebaseを利用しています。

 

◆動作検証環境

・ローカル環境:mac Catalina
・XCode:12.1
・SwiftUI:2.0
・iOS:14.0
・Life Cycle:SwiftUI App
スポンサード

警告【App Delegate does not conform to UIApplicationDelegate protocol.】が出る状況

 

アプリを立ち上げる際に以下の警告が出ます。

2021-05-30 11:41:11.617765+0900 MyApp[96022:5515426] 6.34.0 – [GoogleUtilities/AppDelegateSwizzler][I-SWZ001014] App Delegate does not conform to UIApplicationDelegate protocol.
2021-05-30 11:41:11.618517+0900 MyApp[96022:5515426] 6.34.0 – [Firebase/Analytics][I-ACS023007] Analytics v.60900000 started
2021-05-30 11:41:11.665476+0900 MyApp[96022:5515426] 6.34.0 – [Firebase/Analytics][I-ACS023008] To enable debug logging set the following application argument:
-FIRAnalyticsDebugEnabled (see http://goo.gl/RfcEEE)

 

2行目は、Firebase/AnalyticsのAnalyticsを開始しましたとの説明。

3行目は、デバッグログを有効にするには、次のアプリケーション引数を設定するとの説明ですが、

 

1行目の警告は、

AppDelegateはUIApplicationDelegateプロトコルに準拠していません。

と説明しています。

この状態でも、初期化は行えてコードも動作しますが、警告が気になるので対応します。

 

スポンサード

警告【App Delegate does not conform to UIApplicationDelegate protocol.】が出る原因

 

この警告が出る原因は、firebaseを初期する際に以下の方法を利用していた事でした。

 

コード全文

 

スポンサード

警告【App Delegate does not conform to UIApplicationDelegate protocol.】の対応

 

UIApplicationDelegateプロトコルに準拠させるために以下のコードを追加し、初期化と宣言をします。

    @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate

 

 

コード全文

 

このようにコードを修正し、アプリを立ち上げると、

2021-05-30 11:41:11.617765+0900 MyApp[96022:5515426] 6.34.0 – [GoogleUtilities/AppDelegateSwizzler][I-SWZ001014] App Delegate does not conform to UIApplicationDelegate protocol.

の警告が消えます。

 


以上、【App Delegate does not conform to UIApplicationDelegate protocol.】警告の対応方法について解説しました。