LaunchOptions 디버깅 아이폰은 안드로이드와 달리 Xcode에서 디버깅을 할 때 일반적으로 앱이 종료된 상태에서 디버깅을 할 수가 없습니다. 즉 최초 실행 시 앱이 빌드된 상태에서 Console 로그도 볼 수 없으니 푸시 노티피케이션 같은 서비스를 최초 실행 할 때 테스트가 힘들 수 있습니다. 그래서 Xcode에서 간단한 스키마 설정으로 디버깅 타임을 미룰 수 있고 푸시나 기타 LaunchOptions 값을 제어해할 경우에 쉽게 디버깅을 할 수 있습니다. ▼ 우선 프로젝트에서 Edit Scheme... 메뉴를 선택합니다. ▼ 다음으로 Run 스키마에 Launch 옵션을 Wait for the executable to be lauched 옵션으로 변경합니다. 이 옵션을 사용하게 되면 앱을 실행하는..
Xcode 개발자 모드 아이폰 개발을 위해서 새로운 아이폰을 맥에 연결하고 Xcode에서 디바이스를 설정하면 사용할 수 없는 단말로 설정이 됩니다. 때문에 아이폰 개발을 위해서는 단말을 개발자 모드로 변경해야 합니다. ▼ 아이폰 설정앱으로 들어가서 개인정보 보호 및 보안 매뉴로 진입합니다. 그리고 맨 아래로 스크롤 하면 개발자 모드라는 메뉴를 볼 수 있는데 개발자 모드로 들어가서 모드의 스위치를 활성화 해주면 핸드폰이 개발자 모드로 변하게 됩니다. ▼ 만약 개발자 모드로 변했다면 아이폰 설정앱 중간 쯤에 개발자 라는 메뉴가 생긴 것을 볼 수 있습니다. ▼ 개발자 설정 메뉴에서 다양한 개발자 설정을 할 수 있습니다. 이제 개발자 모드로 핸드폰을 설정했다면 Xcode에서 빌드를 해서 앱을 설치할 수 있게 됩..
테스트 플라이트 (TestFlight) 수출 규정 관리 문서 앱을 개발하다 테스트 플라이트에 앱을 배포할 일이 많이 있습니다. 사실 앱스토어에 앱을 업데이트 하기 전에 한번은 거처야 하는 과정입니다. 그런데 앱을 배포할 때마다 "수출 규정 관리 문서 누락"이란 메시지를 만나게 됩니다. 물론 관리에서 설정을 해주면 제출 준비 완료 상태로 변하면서 앱을 테스트 할 수 있는 상태가 됩니다. ▼ 다음과 같은 화면이 나오면 관리 버튼을 눌러서 암호화 되지 않음으로 선택해야 제출준비상태가 되고 그제서야 테스터들이 테스트 할 수 있습니다. ▼ 이제 프로젝트로 가서 info.plist 파일을 찾아 다음과 같이 App Uses Non-Exempt Excription 을 No(false) 값으로 변경해줍니다. ▼ 만약 코..
안드로이드 단축키 안드로이드 스튜디오를 사용하면서 자주 사용하게 되는 유용한 단축키를 정리합니다. 인텔리제이에서도 동일하게 사용가능합니다. 윈도우와 리눅스에서는 맥과 단축키가 다릅니다. 모두 저장 동기화 모든 항목 검색 찾기 다음 항목 찾기 이전 항목 찾기 바꾸기 작업 찾기 기호 이름으로 검색 클래스 찾기 자동 정렬 유용한 단축키 구분 설명 윈도우/리눅스 맥 일반 모두 저장 Control + S Command + S 동기화 Control + Alt + Y Command + Option + Y 검색 모든 항목 검색 (코드와 메뉴 포함) Shift (키를 두 번 누름) Shift (키를 두 번 누름) 찾기 Control + F Command + F 다음 항목 찾기 F3 Command + G 이전 항목 찾기 ..
CocodPods Podfile.lock CocoaPods 를 사용하면 Podfile.lock이라는 파일을 확인할 수 있습니다. 이는 일반적으로 .gitignore에 포함되지 않습니다. 그 이유는 여러 사용자(개발자)가 동일한 소스 서드파티 라이브러리를 공유하고 사용하기 위해서 입니다. repo를 업데이트 하거나 deintegrate 명령을 통해 파일을 변경할 수 있지만 해당 lock 파일이 고정 됨으로써 모두 동일한 소스를 사용한다고 보장할 수 있습니다. Package.resolved 이와 비슷하게 Xcode의 Swift Package Manager(이하 SPM)를 사용하면 다음과 같이 git에 commit 할 때 포함 여부를 묻습니다. 대체적으로 userdata 같은 경우는 Xcode에 포함하지 않는..
xcframework 오류 앱스토어에 앱을 올릴때 라이브러리에 문제가 있다면 앱스토어에서 업로드를 거부합니다. 기존에 다양한 라이브러리들이 존재하지만 새롭게 추가된 xcframework의 경우 처음 추가해보기 때문에 문제가 발생해도 어떻게 처리해야 할지 난감하더군요. 다음은 에러에 대한 내용입니다. Asset validation failed Invalid bundle structure. The "AIA.app/Frameworks/sdk.framework/Frameworks/native_engine.framework/native_engine" binary file is not permitted. Your app cannot contain standalone executables or libraries, o..
인텔리제이 줄 번호 다양한 IDE 개발툴을 사용하다보면 줄 번호를 표시하는게 개발 작업시 훨씬 도움이 됩니다. 다양한 사람들과 개발 하는 경우에도 줄 번호가 있어야 해당 위치를 확인하고 서로 대화할 수 있기 때문입니다. 줄 번호를 끄거나 킬때 설정에서 옵션을 주어야 하는데 찾기 어려운 분을 위해서 블로그 글을 남깁니다. ▼ IntelliJ IDEA 툴에서 Settings... 메뉴를 선택합니다. 윈도우의 경우 File > Settings 입니다. ▼ 다음으로 Editor > Appearance 메뉴를 선택합니다. 해당 메뉴 옵션중에 Show line numbers의 체크박스를 활성화 합니다. ▼ 줄 번호가 잘 표시되는 것을 확인할 수 있습니다. 저는 처음에 Setting > Appearance 에서 설정..
인텔리제이 한글 설정 인텔리제이에서 한글을 설정하는 방법은 매우 간단합니다. JetBrain ToolBox의 경우 사용자 설치 OS 가 한글이라면 최근에는 자동으로 한글로 설치됩니다. 물론 옵션을 바꿔서 설치도 가능합니다. 이제 영문으로 된 어려운 개발툴 대신 한글 지원이 되는 인텔리제이로 설정해 보겠습니다. ▼ 1. 우선 환경설정으로 이동해서 좌측 설정창 메뉴에서 플러그인(Plugins) 메뉴를 선택합니다. (단축키 Ctrl + Alt + S, 맥의 경우 Command + ,) ▼ 2. 다음으로 플러그인 검색창에 Korean이라고 검색합니다. 그럼 최상단에 보이는 Korean Language Pack / 한국어 언어 팩을 Install 버튼을 눌러서 설치해 줍니다. ▼ 3. 이제 설치가 완료되면 Res..
인텔리제이 (IntelliJ IDEA) 마우스 휠 폰트 변경 평소에 Xcode를 많이 사용하는데 Xcode의 경우 작업 중에 쉽게 폰트 사이즈를 늘렸다가 줄였다가 할 수 있습니다. 하지만 인텔리제이(IntelliJ IDEA)의 경우 설정에서 기본 폰트 사이즈를 수정할 수 있지만 마우스나 키보드 단축키로 쉽게 폰트사이즈를 조절하는 방법을 몰랐습니다. 하지만 손쉽게 폰트 사이즈를 늘렸다 줄였다 할 수 있고 쉽게 초기화할 수 있는 방법이 있어 소개해드립니다. 마치 크롬 브라우저의 폰트 사이즈를 변경하는 것만큼이나 편리합니다. ▼ 우선 인텔리제이의 설정창을 열어줍니다. 단축키로 Command + , 단축키를 누르면 설정화면으로 이동할 수 있습니다. ▼ Editor > General 메뉴에서 Change font..
▼ 아이폰 (iOS) 개발을 하다보면 Failed to prepare device for development.와 같은 에러를 볼 수 있습니다. 테스트 단말이 Xcode에 제대로 연결되지 않아서 발생하는 문제인데 다음 몇가지 방법으로 문제를 해결 할 수 있습니다. 컴퓨터를 재부팅한다. 아이폰을 재부팅한다. 클린빌드를 시도한다. 단말의 연결을 다시 시도한다. Failed to prepare device for development. This operation can fail if the version of the OS on the device is incompatible with the installed version of Xcode. You may also need to restart your mac a..
피그마 팀 권한 오너 (Owner) 최고 관리자 권한입니다. 팀 내 하나의 계정만 오너가 될 수 있습니다. 팀, 프로젝트, 파일 등 모든 것을 관리하며 삭제된 파일들도 되돌릴 수 있는 권한이 있습니다. 어드민 (Admin) 오너 계정을 삭제하거나 오너의 권한을 타인에게 양도할 수 없는 점을 빼고는 오너와 동일한 권한을 가지고 있습니다. 에디터 (Editor) 작업에 필요한 모든 기능을 사용할 수 있고, 협업할 팀원들을 초대할 권한이 있습니다. 유료 결제 정책의 기준이 되는 사용자입니다. (무료 2명) 뷰어 (Viewer) 뷰어는 파일을 볼 수 있는 권한이 있고 파일을 수정하거나 삭제할 권한은 없습니다. 대신 코멘트를 달거나 리소스 자원을 추출할 권한은 있습니다. 동작 뷰어 (Viewer) 에디터 (Edi..
맥에는 VS Code, Atom 기타 훌륭한 에디터가 있지만 가끔 리눅스에서 처럼 vim을 사용할 순간이 있습니다. 하지만 처음 리눅스나 맥에 vim을 설치하면 탭이 스페이스 공백으로 설정되어 있지 않고 그냥 탭으로 동작하는 경우가 있습니다. 이때 vimrc 파일을 수정해서 파일을 수정해줍니다. 보통 개인 PC 일 경우에는 복잡한 vimrc 설정을 할 수 있겠지만 단순하게 꼭 필요한 설정만 해보겠습니다. ▼ 이렇게 설정하면 탭으로 인한 스트레스가 없습니다. smartindent : 들여쓰기 설정 tabstop : 탭 4칸 설정 expandtab : 탭 대신 스페이스로 설정 shiftwidth : 자동 들여쓰기를 4칸으로 설정 ▼ 다음은 좀 더 자세한 vimrc 옵션들입니다. . vimrc는 숨김 파일이며..