LoginSignup
0
1

More than 3 years have passed since last update.

Instance method 'request(:didFailWithError:)' nearly matches optional requirement 'request(:didFailWithError:)' of protocol 'SKRequestDelegate' に対処する

Posted at

事象

SKProductsRequestDelegate の継承元である SKRequestDelegate に定義されている以下のメソッドをSwiftで実装してエラーハンドリングしようとしたところ、warningが出てメソッドが呼ばれない事象に遭遇しました。

func request(_ request: SKRequest, didFailWithError error: Error) {
}

Instance method 'request(:didFailWithError:)' nearly matches optional requirement 'request(:didFailWithError:)' of protocol 'SKRequestDelegate'

解決方法

以下のように @objc でメソッド名を指定し、errorの型を NSError に変更することでメソッドが呼ばれるようになりました。

@objc(request:didFailWithError:)
func request(_ request: SKRequest, didFailWithError error: NSError) {
}

未解決

上記のように変更してもwarningは消えませんでした...

参考

環境

Xcode 11.3.1
Swift 5.1.3

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1