SAP BTP SDK for iOS 9.1 was released and if you are using the SAPFioriFlows framework, then you are affected by minor incompatible changes to the ApplicationUIManaging
protocol.
For a previously generated application project, the error might be related to your application-specific class ApplicationUIManager
which does not conform to protocol ApplicationUIManaging
.
Example of error due to breaking changes in SAPFioriFlows.ApplicationUIManaging protocol
The SAP BTP SDK for iOS 9.1 introduced a new argument, scene sessionID: String?
, which you have to add to your implementation of functions:
showApplicationScreen(completionHandler:)
hideApplicationScreen(completionHandler:)
Example of your previous application code:
class ApplicationUIManager: ApplicationUIManaging {
func showApplicationScreen(completionHandler: @escaping (Error?) -> Void) {
// your code
}
func hideApplicationScreen(completionHandler: @escaping (Error?) -> Void) {
// your code
}
}
You have to add scene sessionID: String?
as a new function argument:
class ApplicationUIManager: ApplicationUIManaging {
func showApplicationScreen(scene sessionID: String?, completionHandler: @escaping (Error?) -> Void) {
// your code (no changes required unless you want adopt Multi-Window support)
}
func hideApplicationScreen(scene sessionID: String?, completionHandler: @escaping (Error?) -> Void) {
// your code (no changes required unless you want adopt Multi-Window support)
}
}
The SAP BTP SDK for iOS team apologizes for the inconvenience.
Original Article:
https://blogs.sap.com/2023/02/20/how-to-fix-does-not-conform-to-protocol-applicationuimanaging-when-using-sap-btp-sdk-for-ios-9.1/