본문 바로가기

전체 글124

[개발 Tip] Xcode에서 한 줄씩 삭제 단축키 설정 Android Studio를 이용하여 앱을 개발할 때는 Ctrl + D 단축키를 이용하여 불필요한 문장을 손쉽게 삭제했었다. XCode에서는 기본값으로 '한 줄 삭제'가 정의되어 있지 않으므로, 사용자 설정으로 단축키를 등록해야 한다. 1. 좌측 상단 > XCode > Preferences 클릭 2. 상단 메뉴 중, [Key Binding]를 클릭하여 'Filter' 입력란에 'delete line'을 입력. 3. 'Delete Line' 옵션의 Key 값에 설정된 단축키가 존재 여부 확인 빈값이라면 Key 영역을 더블클릭하여 입력창을 활성화 4. 활성화된 입력창에 커서 클릭 후, Commnad + D 키를 누른다. 정상 입력 시, 아래 그림처럼 Key 입력란에 단축키가 설정된다. 2020. 7. 19.
[3일차] 오브젝트 이해와 아웃렛 연결 Object, Outlet, var/let의 차이점 * iOS 앱의 동작 구성 1. 앱은 오브젝트로 구성 2. 오브젝트끼리 서로 메시지 보냄 3. 앱은 이벤트에 의해 프로세스 동작 iOS 앱은 위와 같이 크게 오브젝트의 집합으로 구성되어 있으며, 각 오브젝트는 고유의 데이터, 함수로 구성되어 전체 앱 서비스의 일정부분을 담당하게 된다. * 오브젝트(Object)란? : Data + Method 구성. 고유의 데이터와 함수로 구성 * 아웃렛(Outlet)이란? : 인터페이스 빌더와 Swift 코드를 연결해주는 역할 아래 그림처럼 왼쪽 버튼을 선택 후, Control키를 누른 상태에서 오른쪽 Swift 코드 영역으로 끌어다 놓고 아웃렛 생성 팝업창에서 Name 값을 입력 후 [Connect] 버튼을 누르면 .. 2020. 7. 18.
[2일차] 첫 앱 만들기 (alert 띄우기) 개발 공부를 처음 시작하면 첫 예제로 하는 "Hellow World" 알림창 띄우기 작업을 진행했다. 아직 XCode 사용법이 미숙해서 ViewController를 조작법이 익숙하지 않지만, 이 부분은 개발을 진행하다 보면 익숙해질 것이다. * Xcode 개발과정에서 겪을 수 있는 오류 1. Warning (노란색) : 변수형태 잘못 선언이나 권장사항을 알려주는 경우 2. Error (빨간색) : Build도 안되고, 앱이 도중에 Crash 나는 현상 발생 위의 에러는 뷰컨트롤러 내에 기존에 선언한 hello() 메서드명을 다른 메서드명으로 변경하면서 기존에 선언한 메소드명(hello)이 존재하지 않는다는 에러 문장이다. 메서드명을 변경(showAlert)했다면 뷰 컨트롤러에 변경된 name으로 재할당해.. 2020. 7. 15.
[1일차] iOS 개발학습 시작 그동안 시간이 없다는 갖은 핑계로 iOS 개발 공부를 미루고 있었다. 미루던 iOS 공부를 갑자기 시작하게 된 계기는 바로 '주변 동료 개발자의 자가학습'이었다. 자신의 개발 능력 향상을 위해 과감히 투자하는 모습에 '나는 왜 시도하지 않았나'라는 반성과 깨달음을 얻게 되었다. 역시 개발자는 주변에 자극을 주는 촉매제(?) 같은 존재가 필요하다. 인프런, 패스트캠퍼스 등등 요즘에는 다양한 온라인 커리큘럼 강의들이 많아서 나에게 알맞는 강사와 강의 커리큘럼을 찾는 것도 쉽지 않았다. 며칠 간 고민 끝에 '패스트캠퍼스 - iOS (이준원 강사)' 강좌를 수강하기 결정. * 수강한 이유 : 우연히 유튜브를 통해 이준원 강사의 "개발자의 주말 일상" 영상을 보고 관심이 가게 되었다. : 올해 상반기에 온라인 강.. 2020. 7. 15.
[SSL] Retrofit2 HTTPS 통신과 TLS 1.0 / 1.1 서비스 제한 조치 사내 Android 프로젝트로 Retrofit2를 이용하여 API 통신을 구현하였다. HTTPS 도메인에서도 정상적으로 통신이 이루어져서 결과값을 도출해내고 있었다. 그런데, HTTPS(443) API에서 'SSL HandShake Error'가 발생하면서 오류가 발생했다. 왜 그 동안 정상적으로 네트워크 통신을 하던 게 갑자기 이러는 걸까? 우선, 에러 메시지에서 말하는 SSL에 대해서 알아야 한다. SSL이란? SSL(Secure Sockets Layer)은 Certificate Authority(CA)라 불리는 서드 파티로부터 서버와 클라이언트의 인증을 하는 데 사용된다. 주로 전송계층과 응용계층 사이에서 보안조치를 하는데 사용하게 된다. 우리들이 많이 접하게 되는 HTTPS://는 SSL을 사용하.. 2020. 7. 14.
안드로이드 다크모드 적용기 다크모드는 Android 10 (API 레벨 29) 이상에서 제공됩니다. * 다크모드의 장점 전력 사용량을 상당히 절약할 수 있습니다(기기 화면 기술에 따라 다름). 시력이 낮은 사용자와 밝은 빛에 민감한 사용자를 위한 가시성을 개선합니다. 누구나 어두운 환경에서 쉽게 기기를 사용할 수 있습니다. 기존의 안드로이드 프로젝트에 다크모드를 적용하기 위해서는 우선 2가지 준비가 필요합니다. 첫째, values-night 폴더를 생성하여 내부에 values/color.xml 파일을 복사하여 붙여넣기. (일반모드 / 다크모드 : values / values-night) values-night/color.xml 에 정의한 ~ 태그 속성은 다크모드일 때 사용하려는 색상값을 지정해주면 됩니다. 왼쪽(일반) : valu.. 2020. 7. 9.
[이벤트 Tip] 이마트 주차비 자동정산 방법 최근 들어 이마트나 홈플러스 대형마트에서 주차비를 청구하는 지점이 많이 늘어나고 있다. 이마트의 경우에는 ‘이마트몰’ 앱에서 회원가입 이후 차량번호를 등록하면 2시간 무료 주차 이용권을 발급 받을 수 있다. 우선, 이마트몰 앱에서 회원가입/로그인 이후 메인 페이지로 이동한다. 1. 다양한 행사 배너 중, ‘주차비 자동 정산 서비스 OPEN’ 을 터치. 2. 차량 번호 등록 페이지로 이동하기 3. 차량번호 등록 완료 시, 쿠폰발급 안내 메세지 발생 유효기간은 발급일자 기준으로 해당월의 마지막날까지 이용가능한 것으로 확인됩니다. 2020. 7. 8.
ArrayList.remove() 사용시 주의점 ArrayList 데이터에서 특정 조건에 해당하는 값을 모두 삭제하는 함수를 생성하여 테스트 하는 과정에서 IndexOutOfException 에러가 발생했다. 아래는 문제의 소스코드이다. 여러분들은 딱 보았을 때 어느 부분이 문제점인지 바로 보이시나요? ArrayList wishList = new ArrayList(Arrays.asList("android", "java", "ios", "kotlin")); for(int idx=0; idx 2020. 7. 7.
[알뜰Tip] 네이버 QR코드 사용방법 사회적 거리두기와 개인 방역수칙을 지키는 것이 생활화되었습니다. 이에 따라, 사람들이 자주 방문하는 공용시설(도서관, 헬스장, 공공기관)을 방문할 때 반드시 출입기록을 기재해야 합니다. 기존에는 수기로 매번 작성하다보니 잘못된 정보를 기재하면 혹시나 모를 사태에 긴급하게 연락하기가 어렵습니다. 이러한 불편한 방법의 대안으로 ‘네이버 앱’에서 QR코드로 본인인증이 가능합니다. 우선, ‘네이버 앱’을 설치해야 합니다. 설치를 완료하셨다면 자신의 계정으로 로그인 1. 네이버 앱 로그인 이후, 우측 상단의 ‘내 계정 아이콘’을 클릭 2. ‘QR체크인’ 클릭 3. 약관동의, 본인인증 (휴대폰번호) 완료 4. QR코드 생성(20초간 유효) QR코드가 발생하면, 인증해야 할 단말기 카메라에 알맞게 인식되도록 위치조정.. 2020. 7. 4.