본문 바로가기

iOS10

[iOS] Access Token은 어디에 저장하는게 좋을까? UserDefaults? KeyChain? 안녕하세요 코코종입니다 :) 오늘은 마감 기한보다는 조금 일찍! 찾아왔습니다(물론 또 하루만에 써버리고 ㅌㅌ할 예정) 오늘은 최근에 제가 멘토로 활동하고 있는 새싹 3기 교육생분들 사이에 ‘키체인 붐’이 일었는데 이에 관련해 고민 포인트를 조금 던져볼 겸 작성하게 되었답니다. 내용이 많지 않을 것 같아 이번에는 글이 조금 짧을지도 모르겠네요! 결론부터 말하자면, 무조건 키체인에 저장하는게 UserDefaults에 저장하는 것보다 우수한 것은 아니다! 입니다 Access Token, Refresh Token이란? 정의에 대한 설명은 최대한 줄이려고 했는데 간단하게만 짚고 넘어가겠습니다. JWT(Json Web Token)은 Json 객체에 인증에 필요한 정보들을 담아서 비밀키로 서명한 토큰으로 인증하는 방.. 2024. 1. 2.
[iOS] 내가 잘못쓰고 있었던 RxSwift 모음. 당신도 혹시...? 안녕하세요 코코종입니다 :) 2주만에 결국 돌아왔습니다..! (물론 마감에 쫓기고 있는 상태지만요 허허..) 이번에는 RxSwift를 다시 공부하며 잘 이해하지 못했거나 잘못 사용하고 있던 개념이 많다는걸 깨닫고 도움이 되고자 몇가지 적어보려고 합니다. 몇가지 목록으로 적어봤는데 상당히 잘 모르고 썼더라구요…? 그래서 반성겸 다른 분들은 꼭 알고 쓰기를 바라는 마음에서 적어봅니다 이미 알고 계신게 많겠지만! 혹시 모르니까~! 한번 읽어보시죵 *RxSwift에 대한 개념들을 다 소개하는게 목적이 아니기 때문에 ‘아렉수가 뭔데요~~’ 라고 하시면 ‘다른분 블로그 보고 공부하세요~~’라고 답하겠습니다. ^_^ 1. 이중,삼중으로 구독하기 처음에 RxSwift를 사용하며 많이 저질렀던 실수(?)중에 하나입니다... 2023. 12. 27.
[iOS/Swift] parentViewController가 보이는 Modal 띄우기 안녕하세요 코코종입니다. 오늘은 Modal(present)로 다른 뷰컨을 띄울 때 부모가 뒤에 보이도록 한번 해보고자 합니다. 대부분 .automatic이나 .fullScreen으로 모달을 띄우는데요, automatic으로는 아래와 같이 띄울수는 있지만 fullScreen에서는 생각한대로 모달을 띄울수 없습니다. 어라랏..? 뭔가 고장난것 처럼 보이네요..?(내 쓈장의 새꽈른 불렉) 첨부한 Hierarchy를 참고해보면 이미 부모 VC는 보이지 않고 그 뒤에 윈도우씬이 보이네요. 즉 fullScreen은 부모를 보여주지 않는 것으로 보입니다. 해결법부터 알려드리자면 modalPresentationStyle = .overCurrentContext 로 하시면 됩니다. 그럼 아래와 같이 부모 바로 위에 mod.. 2022. 6. 27.
[iOS/Swift] catchError로 error 처리하기 안녕하세요 코코종입니다. 오늘은 이전에 작성했던 [iOS/Swift] RxMoya(Moya) ErrorHandling 해보기(feat. Repository Pattern) 에서 nnError로 처리했던 부분에 대한 추가적인 내용을 가져왔습니다. (가져오고 싶지 않았는데 버그가..) 일단 제가 겪던 문제는 1. Error가 발생했을 때의 response에서 특정한 Model을 가져와서 사용한다. 2. onError에서 에러처리를 했기 때문에 한 번 Error가 발생하면 flatmap으로 연결되어 있는 옵저버블이 dispose 되어버린다.(에러는 확인이 가능하다) 3. 그러나 계속 subscribe를 해줘야 하는 상황...(에러가 또 발생하면 같은 동작을 하도록) 그래서 이에 대해 어떻게 처리할까 하면서 구.. 2022. 6. 26.
[iOS/Swift] CollectionView, TableView 내의 UIView에 TapGesture 추가하기 안녕하세요 코코종입니다! 블로그 글을 써야지 써야지.. 하면서 공부할 것도 많고 한데 밍기적 밍기적😇😇 대다가 이제야 글을 쓰네요.(사실 이전글 보다 먼저 쓰기 시작했는데 이것마저 미뤄짐) 최근에는 제가 이전에 썼던 SeSAC iOS개발자 데뷔과정 후기로 많은 분들이 방문을 해주셨네요 ㅎㅎ (고마워요 새싹~~) 오늘은 제가 일하면서 겪었던 트러블 중 하나인 CollectionView, TableView 내의 TapGesture 추가하는 법을 회고 해보려고 합니다. 가보시죠! 먼저 겪었던 문제는 다음과 같습니다. table/collectionView의 cell 안에 Button이 아닌 View로 그린 버튼아닌 버튼(fakeButton)이 있습니다. 이때 컬렉션뷰나 테이블 뷰의 다음 요소를 보려고 스크롤을 .. 2022. 6. 22.
[iOS/Swift] RxMoya(Moya) ErrorHandling 해보기(feat. Repository Pattern) 안녕하세요 코코종입니다. 오늘은 회사에서 일하다가 겪은 문제를 해결한 내용을 적어보도록 하겠습니다. 찾아보니까 이게 잘 안나오더라구요 ㅜㅜ 그래서 다른분들께 혹시나 도움이 되었으면 해서 올리게 되었습니다. 먼저 문제 상황에 대한 공유하자면, 저희회사의 코드는 Repository 패턴을 활용한 MVVM으로 구성되어 있는데요. 문제는 RxMoya를 활용해서 네트워크 통신을 하게 되는데 API단에서는 Single로 return을 받는데 success인 경우와 error인 경우 ViewModel에서 처리하는 데이터의 Model이 달랐습니다. 어.. 말이 좀 길죠... 예를들면 delete를 하는데 성공일 경우에는 지울 대상의 id(:Int)를 return 하지만 delete를 할 수 없는 경우(저희는 500 e.. 2022. 6. 19.