iOS12でLine SDK Loginエラー
https://developers.line.me/ja/docs/ios-sdk/
LINEが提供しているこちらのSDKを使ってLINEログインを自分のアプリに組み込んでいるのだが、iOS12でSDKでログインに失敗するケースが多発。LINEブログやその他のLINE製アプリでも確認したがエラーになることが判明
エラー内容
Error Domain=LineSDKServerErrorDomain Code=0 "Authentication API Error" UserInfo={NSLocalizedDescription=Authentication API Error, NSUnderlyingError=0x28397db30{ ErrorDomain=NSURLErrorDomain Code=-1005 "ネットワーク接続が切れました。" UserInfo={NSUnderlyingError=0x28397f930 {Error Domain=kCFErrorDomainCFNetwork Code=-1005 "(null)" UserInfo={NSErrorPeerAddressKey=<CFData 0x281426620 [0x1b7b555f0]>{length = 16, capacity = 16, bytes = 0x100201bbcb6899400000000000000000}, _kCFStreamErrorCodeKey=-4, _kCFStreamErrorDomainKey=4}}, NSErrorFailingURLStringKey=https://api.line.me/v2/oauth/accessToken, NSErrorFailingURLKey=https://api.line.me/v2/oauth/accessToken, _kCFStreamErrorDomainKey=4, _kCFStreamErrorCodeKey=-4, NSLocalizedDescription=ネットワーク接続が切れました
wifiでエラーになるケースが多く、キャリア回線に変更すると成功するケースが多いようだ。エラーメッセージに回線の切り替えを促す等の対応も考えられる。ただ、確実にエラーを回避する対応方法は現時点では見つかっておらず、SDKでSafari View Controllerを使用したブラウザログイン(LineSDKAPI.startWebLoginメソッド)で逃げ道を作っておくしかなさそう。以上です