エラーハンドリング
エラーの種類
Section titled “エラーの種類”SDKは以下のエラータイプを提供します:
enum SDKError: Error { case networkError(Error) case authenticationError case apiError(code: Int, message: String) case unknownError
var localizedDescription: String { switch self { case .networkError(let error): return "Network error: \(error.localizedDescription)" case .authenticationError: return "Authentication failed" case .apiError(let code, let message): return "API error (\(code)): \(message)" case .unknownError: return "An unknown error occurred" } }}エラー処理の実装例
Section titled “エラー処理の実装例”YourSDK.shared.performOperation { result in switch result { case .success(let data): // 成功処理 self.handleSuccess(data)
case .failure(let error): // エラー処理 if let sdkError = error as? SDKError { switch sdkError { case .networkError: self.showRetryDialog() case .authenticationError: self.navigateToLogin() case .apiError(let code, _): if code == 404 { self.showNotFoundError() } else { self.showGenericError() } case .unknownError: self.logError(error) } } }}