1. 에러 상황
facebook 로그인기능을 구현하던 중에 loginManger 부분에서 에러를 만났고, 해결하는 과정에서 포스팅 제목에 있는 또다른 에러를 만났습니다.
에러를 많이 만나니 혼자 개발해도 외롭지 않아요. 페북 로그인 버튼이 작동하는 것만 보고 자려고했는데... 에러랑 놀아주느라고 벌써 잘시간이 훌쩍 넘어버렸습니다 ㅠ
처음에는 facebook sdk 적용 과정에서 잘못한 부분이 있는 줄 알고 하나씩 다 다시 훑어봤어요. 한두시간은 거기에 매달렸지만.. 찾지 못했습니다.
2. 해결 방법
시도 1) dody님의 블로그 참고
dody님께서 이미 같은 에러를 만나셨고, 해결 과정을 잘 기록해주셨습니다.
그러나, 눈물나게도 dody님의 해결방법인 아래 코드가 Podfile에 있습니다.. 위 방법으로는 해결이 안되는 것이죠ㅠㅠ
Podfile에 아래 코드가 없으신 분들은 dody님의 해결방법으로 해결되었으면 좋겠습니다.
use_flipper!({ 'Flipper-Folly' => '2.3.0' }) # update this part
post_install do |installer|
flipper_post_install(installer)
end
시도 2) podfile.lock과 Pods 폴더를 삭제한 후 pod install
stackoverflow나 여러 깃헙 커뮤니티에서 위 방법을 해보라는 말을 볼 수 있었습니다.
하지만... 안됨ㅜㅜ
시도 3) podfile의 Flipper 버전을 0.87.0으로 변경
원래는 0.75.1 버전이었습니다. Podfile에서 0.87.0 으로 바꿔주고 다시 npm update > npm install > react-native run-ios
안됨ㅎㅎ!
시도 4) Xcode에서 아이폰으로 실행해보기 (성공!)
지금까지 3시간 동안 계속해서 pod install 과 react-native run-ios를 반복했었는데..
Xcode에 아이폰을 연결하고 실행하니 문제가 되는 부분을 구체적으로 알려줬습니다!!
AppDelegate.m 파일에서 에러가 났었습니다.. (그것도 모르고 괜한 podfile만 후드려팼네요 ㅠ 미안하다)
아래 코드는 페이스북 sdk를 적용하는 과정에서 추가한 코드였습니다.
app을 application으로 바꿔주고 다시 실행하니....
할렐루야
아니근데.. 저 코드는 라이브러리 깃헙 install 에서 복사 붙혀넣기한 코드란 말이죠? 아니 이 사람들이...
페이스북이 rn에 대한 공식 라이브러리 업데이트를 중단하면서 그걸 대체할 깃헙이 새로 생겼는데, 아직은 여러모로 실수가 있나봅니다.
어쩄든 에러를 찾아서 다행...
아무리 해도 해결이 안되시는 분들은 Xcode로 실행해보십쇼!