Technical Articles
How-to fix ‘does not conform to protocol ‘ApplicationUIManaging’ when using SAP BTP SDK for iOS 9.1
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.