Skip to content

TroubleShooting

Park Jae Hyun edited this page Nov 25, 2020 · 5 revisions

11월 20일

Github Actions에서 CI를 실행하는데 문제가 생겼다.

  • NaverMap을 pod install 하기 위해 git-lfs가 필요하다. 하지만 Actions에서 정해준 git-lfs 무료 버전은 2GB이다. 지금은 저장소를 구입할 수 없는 상황이기에 다른 방법을 택하기로 했다. NCloud 저장소에 Pods를 미리 저장해두고 Actions에서 NCloud로 접근해 다운 받고 Xcode를 빌드하고 테스트하자는 것이다! 생각대로 진행했을 때 무사히 잘 작동했고 NCloud의 시크릿을 사용하긴 하지만 무료 시크릿이기에 돈이 들어갈 걱정없이 자동 CI를 진행할 수 있었다.

참고

11월 25일

coredata fetch했을 때 데이터 형식이 달랐던 문제

  • 클러스터링에서는 Place라는 타입을 사용했는데 fetch에서 반환할 때 POI타입으로 반환했습니다. 코드를 merge 했을 때 타입이 달라 중간에 변환하는 작업이 필요했습니다.
  • 현재 사용하는 객체
    • Place : JSON 디코딩을 위한 객체
    • POI : CoreData에 저장하고 실제로 사용하기 위한 객체
  • 여러개의 Place를 한번에 CoreData에 삽입하는 함수가 필요

LinkedList 메모리 릭 이슈

  • LinkedList의 노드가 상호참조하고 있어서 발생하는 이슈(Doubly)
    • prev와 next
  • 내부적으로 Retain Cycle 발생
  • LinkedList deinit을 할 때 노드를 제거하는 순서를 변경하여 해결
    • tail 부터 head까지 역방향으로 순회하며 nil 할당
deinit {
    setNowToTail() // now = tail
    repeat {
        tail = now
        now = tail?.prev
        tail?.prev = nil
        tail?.next = nil
    } while(now != nil)
}

애니메이션

  • 애니메이션 적용 중 카메라 이동 시, 애니메이션이 제대로 수행되지 않는 문제
    • OperationQueue 사용 시 main thread 상태에 따라 애니메이션 속도 차이가 존재
  • 구현된 것과는 다른 방향 (코어 애니메이션을 적용하는 방안 등) 검토
  • 코어애니메이션 언제 쓸수 있나요 ㅠ
    • 멘토님께 여쭤보기
    • 지금쓰셈
  • MapView를 OpenGL로 구현한 이유가 뭘까요??
    • 구현할 때 편리했어서...? swift 말고도 범용적으로 쓰려고...?
    • 마커뷰는 어디로 갔을까요 우리 뷰..

Map SDK를 활용한 POI Clustering Interaction Dev

기획서

🍎 iOS

😀 이것만은 지켜요🤝

Ground Rules
Code Convention
Branch Strategy
Commit Message

데일리 스크럼

Week 1
Week 2
Week 3
Week 4
Week 5

TroubleShooting

트러블슈팅

학습

Clone this wiki locally