오늘은 기능구현에 몰두했음.
나는 로직을 짜기 전 시나리오를 미리 세우는 타입임.
예를 들어, 이번 ReturnViewController의 기능을 구현하기 위해 로직을 굴러보는거지.
요런 느낌으로!
근데 확실히 이번조는 조원이랑 소통이 잘 돼서 너무 재미있었던 것 같음
깃 허브 규칙도 다들 잘 지켜주셔서 컴플릭도 덜 나고 만약 나더라도 담당 하시는 분과
소통하면서 문제 해결해 나가는게 너무 재미있었음
코딩 재밌당!!
으음..
아침에 팀 노션을 확인해보니 매니저님이 SA피드백을 해주셨다.
그 중 앱이 백그라운드에 진입하더라도 스톱워치가 동작하도록 구현..!?
음.. 어떻게 하는거지?
방법은 생각보다 간단했음.
Project -> Signing & Capabilities -> + 버튼 클릭 후
Background 검색해서 Background fetch선택하면 됨.
처음에 타이머 코드를 짤 때 slepp(1)을 사용하여 구현하였는데, 백그라운드 상태일 때
정상적으로 작동하지 않는다는 것을 깨달았다.
[Why?]
검색해서 찾아 본 결과 slepp(1)을 사용하는 경우 정확항 타이머 작동을 보장하지 않으며
실제 시간과 불일치가 발생할 수 있다는 사실..
[Fix]
백그라운드에서 타이머를 정확하게 유지하려면, 앱이 백그라운드에서 실행 중일 때
시간을 기록하고, 포그라운드로 돌아왔을 때의 시간을 비교하여 정확한 경과 시간을 계산하는 것이 좋음!
이외에도 이용시간에 따른 결제금액 상승, 쿠폰사용 버튼 클릭 이벤트 등 내부기능은 1차로 완료함.
이제 맵뷰에서 정보 받아오고, 마이페이지랑 연동하면 될 듯?
'Team Project' 카테고리의 다른 글
Swift Kickboard Project 5일차 (0) | 2024.07.26 |
---|---|
Swift Kickboard Project 4일차 (0) | 2024.07.25 |
Swift Kickboard Project 2일차 (0) | 2024.07.24 |
Swift Kickboard Project 1일차 (1) | 2024.07.22 |
TeamProject 키오스크 4일차 (0) | 2024.07.05 |