出现这个问题是因为两个不同的库都实现了同一个协议,解决方法是在实现 AMRestorePerformRestoreModeRestore 的方法时,使用 AMSupportURLConnectionDelegate 的实例作为参数而不是使用 AMRestorePerformRestoreModeRestore 方法的类自身作为实例。具体的代码示例如下:
@interface YourClass : NSObject
@end
@implementation YourClass
(void)someMethod { // 其他代码
// 出现问题的代码 AMRestorePerformRestoreModeRestore(self, restoreMode, AFPSendProgressEnabled, progressCallback, (__bridge void *)(self), nil);
// 解决问题的代码 AMSupportURLConnectionDelegate *delegate = [[AMSupportURLConnectionDelegate alloc] init]; AMRestorePerformRestoreModeRestore(delegate, restoreMode, AFPSendProgressEnabled, progressCallback, (__bridge void *)(self), nil);
// 其他代码 }
@end