Archive 59

[REST API] Alarmofire error 해결!

[REST API] Alarmofire error 해결! 우선 서버와 데이터 통신 성공해서 결과 가져오고 이후에 처리하는 과정에서 아래의 에러 발생. 그냥 쉽게 말해서 error을 던지는 것을 저 위쪽에서 받을 수 없음.try를 하게되면 throw과정이 생기는데 catch를 반드시 작성해야 함.  ✅ 에러코드Invalid conversion from throwing function of type '(AFDataResponse) throws -> Void' (aka '(DataResponse) throws -> ()') to non-throwing function type '(AFDataResponse) -> Void' (aka '(DataResponse) -> ()') ✅ catch 작성 후 빨간색 사라..

[REST API] 🏃‍♀️ 연습시작.

✅ 이번 시간에는 RestAPI에 대해서 정리를 해두려고 해. ✅ 왜 하게 되었는가? -> API 호출해서 데이터를 CRUD하는 과정을 정말 많이 사용하는데, 이 부분을 매끄럽게 하지 못해서 여러 번 반복하여 이번 기회에 완벽하게 갖춰둘 생각이야. -> 또한 내가 배열에 이미 들어있는 데이터는 잘 다루는데, 네트워크 세션여는 것과 비동기 처리에 있어서 아직도 많이 부족하다는 생각이 들었고 적어도 JSON를 완벽하게 자유자재로 다루는 개발자로 성장하기 위해서! ✅ 그럼 어떻게 할 것인가? -> 처음에는 파이어베이스를 이용하여 내 스스토 JSON트리를 다양하게 만들어서 테스트 하려고 하였으나, 카카오나 네이버 혹은 공공 API를 통해 연습하는 것이 더 실전에 가까워서 그렇게 하기로 했어! ✅ 현재 사용하는 ..

🤦‍♂️ git 원격 저장소에 올라간 commit 되돌리기

이번에는 깃 원격 저장소에 올라간 commit 되돌리는 법에 대해서 알아보자. (문제) 깃허브에 수동으로 파일을 추가하였는데, 나중에 알고보니까 코드가 잘못되었었음. 따라서 깃 허브에서 다시 수정할 필요가 생김. 하지만, 단일 파일이 아니라, 여러 폴더를 하나에 뭉쳐두는 방식이라서 어떻게 해야할지 고민이 생김. (나의 해결법) 1. Xcode - Source Control - Clone 을 클릭해 폴더로 되어있는 깃을 받아온다. 2. Terminal을 열고 clone이 된 곳으로 이동한다. ex) cd Document/"클론되어진 폴더 이름" 3. 그 이후 깃허브 홈페이지에 들어가서 폴더에 들어가 commit을 눌러 돌아가고자 하는 시점의 commit id(?)를 복사한다.\ 4. 클론된 곳으로 이동한 ..

Archive/git 2021.06.26

[iOS14] SearchBar 커스터마이징

이번 목적은 이거였음. 컨테이너를 하나하나 보면서 우리가 원하는 방향으로 커스텀 하려면 어떤필드의 코드를 수정해야하는지 정확하게 찝어낼 수 있었다. 처음에 마주한 문제는 단순히 searchBar.backgroundColor를 사용하여, 서치바가 붙어있는 view 가 불투명화되어 UI적으로 상당히 별로 였지만, 개선하여 지금은 훨씬 더 좋게끔 바뀌었다.

iOS firebase CRUD 기초 및 유의사항

iOS firebase CRUD 기초 및 유의사항파이어베이스를 공부하고 CRUD를 활용해서 작업해보자RealtimeDatabase랑 FireStore가 존재하는데, 서비스 형태에 따라서 적절하게 적용 //// ViewController.swift// FirebaseDemoApp//// Created by Hamlit Jason on 2021/04/30.//import UIKitimport Firebaseclass ViewController: UIViewController { var ref: DatabaseReference! @IBOutlet weak var label: UILabel! var todos = [String]() var todos2 = [String:Str..

사용자의 디바이스 시간 불법 변경 막는 법

사용자가 디바이스 시간을 변경하여 아이템 획득이나 불법적인 사용을 한다면 어떻게 막아야 할까? 예를들면 2시간이 지나면 아이템을 얻는건데, 디바이스를 시간 설정을 2시간 뒤로 바꾸면 아이템을 얻을 수 있게 되는 문제가 발생하는데 해결하는 방법은 간단하다. 현재 시간 확인 api를 만들어서 서버의 시간과 디바이스의 시간이 같은지 비교하고 시간을 변경하더라도 손쉬게 어뷰징 시도를 막을 수 있다. 즉 비교하는 로직을 추가하면 된다!