セルフマネージド統合

統合をより簡単にするため、PushSDK はメソッドスワイジングを使用して、アプリケーションデリゲートとユーザ通知センターに自動的に統合されます。次のような複数のシナリオでは、自動統合を無効にしたい場合があります:

  • スワイジングやその他の自動統合を含む他の SDK との競合

  • 競合するサードパーティ製開発ソリューション

  • 当社のメソッドスワイジングが、既存のアーキテクチャと競合する

circle-info

スワイジングが既存のコードと互換性がない場合にのみ、自己管理型の統合を検討することをお勧めします。自己管理型の統合を使用する場合は、PushSDK の新しいリリースで、手動で呼び出す必要がある追加のメソッドが増えないようにする必要があります。

次のメソッド呼び出しを追加します の前に 呼び出す PushSDK.setConfiguration:

PushSDK.disableMethodSwizzling()
circle-exclamation

スワイジングを無効にすると、もはやスワイジングされないメソッドを呼び出すために、PushSDK への呼び出しを配置する必要もあります。以下のメソッドをすべて実装しない場合、PushSDK が正しく動作しない可能性があります。

手動で呼び出す必要があるメソッドは次のとおりです:

  • application:didRegisterForRemoteNotificationsWithDeviceToken:

  • application:didFailToRegisterForRemoteNotificationsWithError:

  • application:didReceiveRemoteNotification:fetchCompletionHandler:

  • userNotificationCenter:willPresent:withCompletionHandler:

  • userNotificationCenter:didReceive:withCompletionHandler:

  • iOS バージョン 10 以前を対象としている場合:

    • application:didReceiveRemoteNotification:

UIApplicationDelegate の例

UNUserNotificationCenterDelegate の例

最終更新