로그인 프로젝트에서 Alamofire를 이용해 데이터를 받아왔었는데 URLSession을 써보고 싶어져서 바꿔보기로 했다. 회원가입, 로그인, 프로필정보 이렇게 세 가지의 네트워킹을 하고 있는 상태다. 회원가입에서는 이메일, 이름, 패스워드 세 가지의 파라미터를 받고있고, 로그인에서는 이메일과 패스워드, 그리고 프로필정보에서는 파라미터를 받고 있지 않는다. 다시 말해서, 회원가입과 로그인은 파라미터를 같이 보내야하고 프로필정보는 파라미터를 보낼 필요가 없다는 말이다(헤더로 토큰만) 프로필정보를 받아오기까지는 문제가 전혀 없었다. static func requestProfile(completionHandler: @escaping ((Profile?) -> ())) { let api = SesacAPI.pr..
Remote Notification은 JSON payload 형태로 사용자에게 데이터를 전달한다. 여기서 payload(페이로드)란 간단히 전송되는 데이터를 의미한다고 보면 된다. 이번 글에서는 FCM을 이용해 Remote Notification을 띄우는 방법을 정리해보겠다. Remote Notification의 동작 구조 먼저 디바이스에서 APNs로 토큰을 요청하고 받아오면, 디바이스는 이 토큰을 서버로 보낸다. (*APNs: Apple Push Notification service의 약자로, 서버에서 알림을 보낼때 반드시 APNs를 통해서 보내야한다.) 서버(provider)가 푸시 토큰을 전달받았다면, 추후에 푸시를 전송할 때 APNs에 디바이스 토큰과 함께 보내고 싶은 데이터를 APNs로 보낸다...
기존에는 내 위치(위치 권한 허용)와 새싹 캠퍼스 위치(위치 권한 허용X)의 날씨만 받아올 수 있었다. MapView를 이용해서 지정한 위치의 날씨를 받아오는 기능도 있으면 좋을 것 같아 추가해보았다. 먼저, + 버튼을 눌렀을 때 현재 위치를 Annotation을 이용해 표시한 MapView를 띄워주도록 하였다. MapView에서 위치를 바꿀 때마다 Annotation으로 현재 센터 표시를 하고 좌표를 구해주었다. 날씨 알아보기 버튼을 눌렀을 때, 클로저를 이용해 값을 전달하여 날씨를 구하고 레이블에 표시해주었다. +옆의 위치 버튼을 누르면 다시 현재 위치의 날씨를 표시해주도록 하였다. 클로저를 이용한 값 전달 코드 데이터를 전달하는 맵뷰 컨트롤러에서 locationHandler를 선언 후, 날씨 알아보..
iOS 15부터 configuration을 이용해 버튼을 다양하게 구성할 수 있다. Style 아래의 코드에서 filled()부분만 바꿔가며 확인해보았다. color baseBackgroundColor로 배경색을, baseForegroundColor로 글씨 색을 바꿀 수 있다. baseForegroundColor가 이전의 tintColor를 의미하는 것 같다. title configuration을 이용해 title과 subtitle도 설정할 수 있다. subtitle은 항상 타이틀의 아래에 위치해 있는 것 같고, titleAlignment를 통해 타이틀의 위치를 정할 수 있다. padding을 이용하여 title과 subtitle간의 거리를 늘릴 수도 있다. 버튼의 높이를 고정시키지 않았더니 버튼의 높이..
새싹 과제로 날씨 API를 이용하여 날씨 앱을 만들어보았다. 현대카드 웨더 메인 화면 UI만 따라하고, 날씨를 보여주는 기능을 제외한 나머지는 구현하지 않았다. 구현한 기능은 간단히 아래와 같다. 현재 시간 -> 왼쪽 상단에 현재 시간 표시. 위치 카카오 로컬 API 사용 -> 위치 권한 요청 -> 위치 권한이 허용되지 않은 상태인 경우, Label에 서울만 표시 -> 위치 권한이 허용된 상태인 경우, 동까지 표시 날씨 openweather API 사용 -> 이미지 URL을 이용해 이미지 처리 -> 현재 날씨, 기온, 풍속, 습도, 기압 그리고 날씨에 따른 간단한 메세지 표시 -> 위치 정보를 받아왔을 땐, 현재 위치의 날씨 정보 -> 위치 정보를 받아오지 못했을 땐, 새싹 캠퍼스 위치의 날씨 정보 폰트..
- Total
- Today
- Yesterday