꿀팁 저장소
꿀팁들
-
개인정보처리방침
개인정보처리방침
2023.12.08 -
[Mac OS] JAVA 설치 및 삭제 방법 알아보기
[Mac OS] JAVA 설치 및 삭제 방법 알아보기
2020.06.10Java (JDK) 설치 다운로드 링크 https://www.oracle.com/java/technologies/javase-downloads.html 위에 URL을 클릭하고 이동하여 JDK를 다운로드합니다. Java SE 11 (LTS) 버전을 다운로드합니다. 오른쪽에 JDK Download를 클릭합니다. Mac에 설치하려면 jdk-11.0.7_osx-64_bin.dmg를 선택하여 다운로드합니다. ※ 다운로드하기 위해서는 Oracle 계정으로 로그인하여합니다. 계정이 없으면 회원가입을 합니다. 동의 버튼을 체크하고 다운로드 버튼을 눌러 프로그램을 받아주세요. 다운로드한 프로그램을 실행하면 다음과 같은 메시지가 나올 수 있습니다. 앱 스토어에 공식적으로 받은 프로그램이 아니면 다음과 같이 확인 설정을 해.. -
SSH Key 사용 (비밀번호 없이 서버 접속하기)
SSH Key 사용 (비밀번호 없이 서버 접속하기)
2019.03.18SSH Key란?서버에 접속할 때 비밀번호 대신 Key를 제출하는 방식입니다. SSH Key를 사용하는 이유?비밀번호 없이 자동으로 서버에 접속하고 싶을 때비밀번호 보다 높은 수준의 보안을 필요로 할 때 SSH Key 동작 방식SSH key는 공개 키(Public Key)와 비공개 키(Private Key)로 이루어져 있습니다.SSH Key의 동작 방식은 비공개 키(id_rsa)는 로컬 컴퓨터 (Mac)에 있어야 하고, 공개 키(id_rsa.pub)는 원격 서버(Linux)에 authorized_keys에 있어야 합니다. 클라이언트 (Mac OS) SSH Key 생성 (Unix 기준)Mac ssh-keygen이라는 명령어를 이용하여 생성할 수 있습니다.터미널을 실행하여 아래와 같이 입력합니다. -t rs.. -
Jenkins 설치하기
Jenkins 설치하기
2019.03.14Jenkins란?Jenkins는 Java로 작성된 오픈 소스 자동화 서버입니다 . 젠킨스 (Jenkins) 는 소프트웨어 개발 프로세스 의 사람이 아닌 부분을 자동화하고 지속적인 통합 을 통해 지속적인 제공의 기술적 측면을 촉진하도록 지원 합니다. Apache Tomcat 과 같은 서블릿 컨테이너 에서 실행되는 서버 기반 시스템입니다 . AccuRev , CVS , Subversion , Git , Mercurial , Perforce , ClearCase 등 버전 관리 도구를 지원합니다.RTC는 실행할 수 있는 Apache Ant , Apache Maven과 SBT 기반 프로젝트뿐만 아니라 임의의 Shell Script 및 Windows 배치 명령도 자동화 실행이 가능합니다. Jenkins는 MIT 라.. -
리눅스 이미 설치된 Java 버전 업데이트
리눅스 이미 설치된 Java 버전 업데이트
2019.01.09Java 다운로드오라클 홈페이지로 이동하여 Java SE Development Kit 8u19 버전 Linux x64 jdk-8u191-linux-x64.tar.gz를 다운로드 받습니다.다운로드 받은 파일을 ftp(파일질라)를 통해서 업로드 합니다. jdk-8u191-linux-x64.tar.gz 압축해제다음 명령어를 입력하여 압축을 풀고 디렉터리를 옮겨줍니다.tar -zxvf jdk-8u191-linux-x64.tar.gz mv jdk1.8.0_191/ /usr/lib/jvm 심볼릭 링크 생성update-alternatives --install 명령어를 사용해서 링크 생성합니다.update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.8.. -
비밀번호뭐였지? - 아이디/비밀번호 관리
비밀번호뭐였지? - 아이디/비밀번호 관리
2018.11.25앱 설명사용자님은 모든 사이트의 아이디/비밀번호(패스워드)를 기억하고 계시나요?혹시 아이디나 비밀번호 중 하나라도 기억이 나지 않으면 찾느라 고생하시지는 않으셨는지요?비밀번호뭐였지?는 사용자님의 아이디와 비밀번호를 안전하게 관리해주는 어플리케이션입니다.마스터 비밀번호 하나만 기억하면 수많은 사이트의 아이디와 비밀번호를 일일히 기억할 필요가 없습니다. 탄탄한 기능마스터 비밀번호 하나로 모든 비밀번호를 한번에 관리이름, 등록일자, 자주사용, 최근사용순, 오름차순, 내림차순 정렬 기능그룹으로 편리한 계정 관리초성 검색 기능 (애플도 지원하지 않음.)안전한 비밀번호 생성 기능Touch ID, Face ID 지원 빠르게 안전하게 잠금 해제보안을 위해 사파리로 페이지 열기 지원계정과 관련된 메모 작성 기능썸네일로 .. -
보안카드 뭐였지? - 모든 보안카드 관리
보안카드 뭐였지? - 모든 보안카드 관리
2018.10.03보안카드를 지갑에 넣어 다니거나 따로 보관하고 계신가요?혹시라도 급하게 이체할 일이 생겼는데 지갑을 잃어버리거나 보안카드가 없어서 난감했던 적은 없으신가요? 더 이상 고통받지 마시고 보안카드 뭐였지?를 다운로드 받으세요!보안카드 뭐였지?는 편리하고 안전하게 보안카드를 관리해주는 솔루션입니다.마스터 비밀번호 하나로 모든 보안카드를 관리해보세요! 탄탄한 기본 기능- 사용자 중심의 깔끔하고 편리하게 설계된 디자인- 앱 실행없이 위젯으로 보안카드 사용- 초성 검색 기능 (애플도 지원하지 않음)- 마스터 비밀번호로 모든 보안카드 관리- Touch ID or Face ID로 빠르고 편리하게 잠금 해제- 아이클라우드 자동 동기화 (백업 및 복원)따로 설정할 필요없이 버튼 클릭 한번으로 애플 계정에 자동 동기화 강력한.. -
생명주기 (life cycle)와 Bean 범위
생명주기 (life cycle)와 Bean 범위
2018.07.05Spring 컨테이너 생명 주기GenericXMLApplicationContext ctx = GenericXMLApplicationContenxt(); // 생성 ctx.load("classpath:applicationCTX.xml"); // 설정 ctx.refresh(); // ctx의 값을 새로 셋팅할 경우 refresh() 메서드 호출 필요 Student student = ctx.getBean("Student", Student.class); // 사용 System.out.println("이름: " + student.getName()); System.out.println("나이: " + student.getAge()); ctx.close(); // 종료 Spring Bean 생명 주기인터페이스impl.. -
DI (Dependency Injection) 의존 주입 - Spring Framework
DI (Dependency Injection) 의존 주입 - Spring Framework
2018.07.04DI (Dependency Injection) 의존 주입A라는 객체가 있는데 A객체에 setter(), construct()를 사용해서 직접 New로 생성하지 않고A라는 객체안에 B와 C를 받을 필드를 만들어 놓고 setter와 construct를 이용해서 B와 C를 받는다.즉, B/C 객체는 외부에서 생성하여 A객체에 넣어주는 것을 DI(Dependency Injection)이라 한다.DI는 외부에서 의존하는 객체를 만들어 주입한다. 라는 의미다.IOC 컨테이너위와 같이 외부에서 객체를 만들어 주입(도킹)하는 객체들이 모였는 있는 것을 IOC 컨테이너라고 한다.Spring은 부품을 생성하고 조립하는 라이브러리 집합체라고 생각하면 된다. (DI, IOC 컨테이너)bean 객체 생성String config.. -
Xcode 빌드 시간 표시 명령어
Xcode 빌드 시간 표시 명령어
2018.07.03Xcode 빌드 시간 표시 명령어터미널로 이동해서 다음 명령어를 입력합니다.$ defaults write com.apple.dt.Xcode ShowBuildOperationDuration -bool YESXcode 재시작을 합니다.Command + b를 누르면 빌드가 되면서 시간이 표시됩니다. -
iOS NSTimer 사용하기
iOS NSTimer 사용하기
2018.07.03NSTimer 사용하기프로그래밍을 하다 보면 특정 작업이 몇초, 몇분, 몇시간 후에 실행되는 로직을 원할 때가 있습니다. 이런 경우에 dispatch_after를 사용해서 처리할 수도 있지만, 또 다른 방법으로는 NSTimer를 이용하면 편리하게 구현할 수 있습니다.// dispatch_after 사용하는 경우 dispatch_time_t waitTime = dispatch_time(DISPATCH_TIME_NOW, CALL_INTERVAL * NSEC_PER_SEC); dispatch_after(waitTime, dispatch_get_global_queue( DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^(void) { });dispatch_after의 경우 NSDictionary형태.. -
iOS Swipe Gesture 정리
iOS Swipe Gesture 정리
2018.07.02iOS Swipe Gesture 정리iOS는 SDK에서는 많은 제스처를 알 수 있지만, 그 중에서도 스와이프 제스처에 대해 정리하려 합니다. Swipe Gesture 등록// Swift override func viewDidLoad() { super.viewDidLoad() let leftSwipeGestureRecognizer = UISwipeGestureRecognizer(target: self, action: #selector(handleSwipes(_:))) let rightSwipeGestureRecognizer = UISwipeGestureRecognizer(target: self, action: #selector(handleSwipes(_:))) leftSwipeGestureRecognize.. -
Cocoapods에 직접 만든 Library 등록 하는 방법
Cocoapods에 직접 만든 Library 등록 하는 방법
2018.07.01Cocoapods에 직접 만든 Library 등록 하는 방법안녕하세요. 레비입니다. 이번에는 직접 만든 라이브러리를 Cocoapods에 Library에 등록하는 방법에 대해서 정리하려고 합니다.cocoapods는 iOS에서 Objective-C, Swift 라이브러리를 설치 및 배포할 수 있도록 도와주는 의존성 관리 도구입니다. 일반적으로 사용하는 목적은 다른 개발자가 만든 라이브러리를 사용할 목적으로 사용되지만, 오픈소스에 기여하거나 자신이 필요한 코드들을 모아두고 여러 프로젝트에서 쉽게 사용할 목적으로 등록하기도 합니다. 그럼 진행하기에 앞서 먼저 준비되어야 할 항목들이 있습니다. 준비되지 않았다면 진행이 불가합니다.cocoapods 설치 및 사용 방법을 익히셔야 합니다. cocoapods.. -
로컬 프로젝트에 직접 만든 Pod 생성 및 적용하기
로컬 프로젝트에 직접 만든 Pod 생성 및 적용하기
2018.07.01로컬 프로젝트에 직접 만든 Pod 생성 및 적용하기안녕하세요. 레비입니다. 이번에는 직접 만든 라이브러리를 Local Pods로 만드는 방법에 대해서 정리하려고 합니다.cocoapods는 iOS에서 Objective-C, Swift 라이브러리를 설치 및 배포할 수 있도록 도와주는 의존성 관리 도구입니다. 일반적으로 사용하는 목적은 다른 개발자가 만든 라이브러리를 사용할 목적으로 사용되지만, 오픈소스에 기여하거나 자신이 필요한 코드들을 모아두고 여러 프로젝트에서 쉽게 사용할 목적으로 등록하기도 합니다. 그럼 진행하기에 앞서 먼저 준비되어야 할 항목들이 있습니다. 준비되지 않았다면 진행이 불가합니다.cocoapods 설치 및 사용 방법을 익히셔야 합니다. cocoapods 설치 및 사용 방법 먼저 cocoa.. -
프로젝트 prefix .pch 파일 설정
프로젝트 prefix .pch 파일 설정
2018.06.28프로젝트 prefix .pch 파일 설정prefix란? 무엇이냐면 프로젝트 전체에 적용되는 설정이라고 생각하면 된다.예를 들어 앱 전체 프로젝트에 해당되는 define 값이 있다면 define.h 파일을 만들어서 따로 관리해도 되지만, 그렇게 되면 프로젝트마다 define.h 파일을 매번 #import 시켜야하는 불편함이 있다. 이럴 때 prefix 파일을 만들고 define 값을 넣고 사용한다면 조금더 유연하게 프로젝트 관리가 가능하다. prefix 파일의 확장자는 .pch 파일이고 파일명은 원하는데로 만들어도 된다. .pch (prefix파일) 생성하기프로젝트 오른쪽 마우스 클릭 > New File... > Other > PCH File 생성이름은 원하는 이름으로 설정해도 상관없다.RemoteCont.. -
iOS 데이터 NSData, NSString, char* 변환
iOS 데이터 NSData, NSString, char* 변환
2018.06.28iOS 데이터 NSData, NSString, char* 변환NSString to char*// dataString -> NSString char *buffer = [dataString UTF8String];char* to NSString// buffer -> char* NSString *dataString = [NSString stringWithUTF8String: buffer]; // -> 1번째 방법 NSString *dataString = [NSString stringWithFormat:@"%s", buffer]; // -> 2번째 방법NSData to char*// data -> NSData const char *buffer = (const char*)[data bytes];char* to NS.. -
오타날 수 있는 긴 URL을 짧은 URL로 변경해주는 사이트 - bitly
오타날 수 있는 긴 URL을 짧은 URL로 변경해주는 사이트 - bitly
2018.06.26bitly (https://bitly.com/)오타날 수 있는 긴 URL을 짧은 URL로 변경해주는 사이트 PC, 모바일 환경에서 네트워크 통신을 하다보면 누군가에게 URL주소를 알려줄 때가 있습니다.그런데, URL주소가 복잡하고 길고 그러면 전달받은 사람의 입장에서는 입력하기 귀찮거나 오타날 경우가 있습니다.하지만 지금 알려드리는 사이트를 이용하면 긴 URL의 주소를 짧은 URL의 주소로 변경해줍니다.물론, 실제 URL 주소가 변경되는 것은 아니고 짧은 URL의 주소로 접속하면 긴 URL의 리다이렉션 시켜줍니다. 긴 URL https://itunes.apple.com/kr/app/%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8-%EB%AD%90%EC%98%80%EC%A7%80-%EA%.. -
iOS 매일 특정 시간에 알림 구현 (UILocalNotification)
iOS 매일 특정 시간에 알림 구현 (UILocalNotification)
2018.06.25iOS 매일 특정 시간에 알림 구현 (UILocalNotification)iOS에서 매일 특정 시간에 알림을 받을 수 있는 방법에 대해서 정리하려고 한다.Notification 알림은 크게 2가지로 나뉜다.첫 번째는, APNS 서버에서 데이터를 전달받아 띄우는 Notification 알림두 번째는, 앱 자체에서 띄우는 Local Notification 알림매일 특정 시간에 Nofitication 알림을 띄우는 방법은 두 번째 방법을 이용해서 구현한다. AppDelegate 메서드 구현-(void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification { if(applicat.. -
Android Realm 데이터 확인하기 (Realm Browser, Realm Studio, Emulator)
Android Realm 데이터 확인하기 (Realm Browser, Realm Studio, Emulator)
2018.06.24Android Realm 데이터 확인하기안드로이드에서 Emulator에 Realm 데이터 확인하는 방법에 대해서 정리한다. Realm Browser 설치 (MacOS)Realm 데이터를 확인하기 위해서는 .realm 확장자 포멧을 열어 확인할 수 있는 툴이 필요하다.AppStore에 이동하여 검색창에 Realm Browser라고 입력하고 설치한다. 앱스토어 다운로드 Realm Studio 설치 (Windows, iOS)Windows 환경에서는 Realm Studio를 이용해서 .realm를 확인 할 수 있다.Realm Browser보다 많은 기능을 제공한다. (Query 검색, Admin 기능, Realm 서버 동기화)Realm Studio 다운로드 Emulator Realm 데이터 확인하기Android.. -
iOS Realm 데이터 확인하기 (Realm Browser, Simulator, iPhone)
iOS Realm 데이터 확인하기 (Realm Browser, Simulator, iPhone)
2018.06.24iOS Realm 데이터 확인하기iOS에서 Realm 데이터를 확인하는 방법에 대해서 정리한다.Simulator와 실제 iPhone Device에서 Realm 확인하는 방법은 다르다. Realm Browser 설치Realm 데이터를 확인하기 위해서는 .realm 확장자 포멧을 열어 확인할 수 있는 툴이 필요하다.AppStore에 이동하여 검색창에 Realm Browser라고 입력하고 설치한다. 앱스토어 다운로드 Simulator에서 데이터 확인먼저 Xcode에서 Simulator로 실행하는 경우는 다음 절차로 진행하면 된다. (ObjectiveC 기준)첫번째, .realm 파일의 경로를 구한다.NSLog(@"%@", [RLMRealmConfiguration defaultConfiguration].file.. -
MacOS 네트워크 MAC Address 확인하는 방법
MacOS 네트워크 MAC Address 확인하는 방법
2018.06.21MacOS 네트워크 MAC Address 확인하는 방법MacOS에서 네트워크 MAC Address를 확인하는 방법에 대해서 알아보겠습니다. 좌측 상단에 있는 애플 아이콘을 눌러 시스템 환경설정 버튼을 누릅니다. 시스템 환경설정에서 네트워크항목을 선택합니다. 저는 Wi-Fi를 사용하여 Wi-Fi에 대해 알아봤지만, 랜선을 꼽아서 인터넷을 사용하는 경우에는 Ethernet 항목을 확인합니다.확인하고 싶은 네트워크를 선택 후 고급 항목을 선택합니다. 하드웨어 탭을 선택하여 MAC 주소를 확인하면 됩니다. -
iOS iCloud 구현 시 NSUbiquitousKeyValueStore Maximum Size Issue
iOS iCloud 구현 시 NSUbiquitousKeyValueStore Maximum Size Issue
2018.06.20NSUbiquitousKeyValueStore Maximum Size IssueiCloud에 동기화를 구현하면서 Key-Value를 저장하는 [NSUbiquitousKeyValueStore defaultStore]를 사용하다이미지를 NSData 형태로 저장하고 다시 불러오는 과정에서 못 불러오는 이슈가 생겼다.로직에 문제가 있는가? 하고 테스트 샘플을 만들어 진행해보고 확인해봤는데 데이터가 저장되지 않는 이슈가 생겼다. 그래서 NSUbiquitousKeyValueStore 애플 도큐먼트 확인를 확인해보니 안되는 이유가 있었다.Key-Value 형태로 저장하는 방식에는 다음과 같이 조건들이 있었다. 앱은 키 - 값 저장소에 1MB의 전체 공간으로 제한됩니다. 키당 별도로 1MB 제한이 있으며 최대 1024.. -
Realm Sytax Error 정리 - ObjectiveC
Realm Sytax Error 정리 - ObjectiveC
2018.06.19Realm Sytax Error 정리 - ObjectiveC이 글은 ObjectiveC에서 Realm을 사용하며 발생했던 Sytax Error들의 대해 정리한 글이다.앞으로 발생하는 Error에 대해서도 계속 업데이트 될 예정이다. Terminating app due to uncaught exception 'RLMException', reason: 'Binary too big'저장하려는 데이터 크기가 16MB를 넘었을 때 나타나는 에러이다.갤러리의 이미지를 Realm에 NSData로 넣는 도중 발생NSData.length로 데이터의 크기를 확인할 수 있음(18752515 / 1024 / 1024 = 17.88 MB) Terminating app due to uncaught exception 'RLMExc.. -
iOS 개발 시간을 절약할 수 있는 Xcode 코드 스니펫
iOS 개발 시간을 절약할 수 있는 Xcode 코드 스니펫
2018.06.18개발 시간을 절약할 수 있는 Xcode 코드 스니펫오늘은 스터디에서 배운 코드 스니펫을 정리하려고 한다.코드 스니펫이란? Snippet이란 단어는 작은 조각이란 뜻이다. 코드 작은 조각?코드 스니펫은 자주 사용하는 코드나 미리 정의되서 사용되는 여러 코드들의 대해 미리 정의해주는 기능이다./** [2018.06.14 Leby.Y.Kim] */예를 들어 프로젝트에서 매번 주석을 작성할 때마다 다시 쓰거나, 아니면 복사해서 붙여넣는다면 엄청 불편하다.하지만 코드 스니펫에 저 주석을 저장 해놓는다면 comment라는 글자만 입력해도 위 주석을 바로 사용할 수 있다. 코드 스니펫 추가먼저 코드 스니펫에 추가하려는 코드를 작성한다./** [2018.06.14 Leby.Y.Kim] */위 같이 코드를 작성하고 드래.. -
JSON 데이터 보기 좋게 정렬해주는 사이트 - jsonlint
JSON 데이터 보기 좋게 정렬해주는 사이트 - jsonlint
2018.06.13JSONlint (https://jsonlint.com/)개발을 하다보면 RESTFul API를 사용하는 경우 데이터 Request와 Response 값을 JSON형태로 전달하고 받는다.JSON 데이터를 로그로 출력하는 경우 가 한 줄로 보여지는데 이런 경우 데이터를 제대로 알아보기 힘들다.한 줄로 보여지는 데이터를 넣고 Validate JSON을 클릭하면 JSON 데이터를 보기 좋게 정렬해준다. -
Xcode 다운로드 URL (Version 1 ~ 10)
Xcode 다운로드 URL (Version 1 ~ 10)
2018.06.12Xcode 1010 beta Xcode 99.49.3.19.2 (Last version supporting OS X 10.12.6 Sierra)9.19.0.1 Xcode 88.3.38.2.1 (Last version supporting OS X 10.11.5 El Capitan)8.18.0 Xcode 77.3.17.2.1 (Last version supporting OS X 10.10 Yosemite)7.1.17.0.1 Xcode 66.46.3.26.2 (Last version supporting OS X 10.9.5 Mavericks)6.1.16.0.1 Xcode 55.1.15.0.2 Xcode 44.6.34.5.24.4.14.3.24.24.14.0.2 Xcode 33.2.63.1.43.0 Xcode .. -
iOS 앱스토어 모달창으로 보여주기
iOS 앱스토어 모달창으로 보여주기
2018.06.12iOS 앱스토어 모달창으로 보여주기iOS 어플리케이션을 구현하다 보면 리뷰나, 다운로드를 유도하는 상황이 생긴다.그럴 경우 아래와 같은 코드를 이용해 앱스토어로 이동시킨다.NSString *appUrl = @"https://itunes.apple.com/kr/app/%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8-%EB%AD%90%EC%98%80%EC%A7%80-%EA%B3%84%EC%A0%95-%EA%B4%80%EB%A6%AC-%EC%95%84%EC%9D%B4%EB%94%94-%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8/id1392239856?mt=8"; [[UIApplication sharedApplication] openURL:[NSURL URLWithStri.. -
C++ 후위표기법을 중위표기법으로 변경하는 샘플
C++ 후위표기법을 중위표기법으로 변경하는 샘플
2018.06.11중위표기법 (infix)연산자를 연산 대상의 가운데에 쓰는 표기법일반적인 수학 표기법경우에 따라 연산의 우선순위를 정확히 표현하기 위해 괄호가 필요함예: ( 1 + 2 ) * ( 3 + 4 ) 전위표기법 (prefix)연산자를 연산 대상의 앞에 쓰는 표기법 예: * + 1 2 + 3 4 후위 표기법 (postfix)연산자를 연산 대상의 뒤에 쓰는 표기법예: 1 2 + 3 4 + * /* 후위 표기식으로 바꾼이유 1.연산자 우선순위 2.괄호 */ #include #include #define MAX_STACK_SIZE 100 //스택의 최대 크기 #define MAX_EXPR_SIZE 100 //수식의 최대 크기 typedef enum { //연산자들의 우선순위를 열거형으로 선언 lparen, rp.. -
iOS 10+ Privacy 설정
iOS 10+ Privacy 설정
2018.06.10iOS 10+ Privacy 설정iOS 10이상에서는 빌드 시에 카메라나 특정 다른 기능을 사용하면 아무런 경고 없이 Crash가 발생하게 된다. 디버그 메세지는 다음과 같다.This app has crashed because it attempted to access privacy-sensitive data without a usage description. The app’s Info.plist must contain an NSCameraUsageDescription key with a string value explaining to the user how the app uses this data.iOS 10에서 아래와 같은 기능을 사용하기 위해서는 사용자의 확인 메세지를 설정해줘야 한다. 사용 설명을 .. -
iOS New File Template 만들기
iOS New File Template 만들기
2018.06.09iOS New File Template 만들기오늘은 iOS 스터디에서 배운 iOS New File Template 만들기에 대해서 정리하려고 한다.iOS Template이 무엇인가? 내가 사용하기 편리하게 미리 Override Method나 pragma mark를 구분을 지어놓고그렇게 만들어 놓은 템플릿을 그대로 가져와서 사용할 수 있다. 템플릿을 만들어 놓으면 좋은 장점개발 속도가 빨라진다. 미리 만들어 놓은 템플릿을 이용하기 때문에 입력하는 Source의 양이 줄어든다.편리하다. 미리 필요한 부분들을 모두 구현해놓았기 때문에 그냥 사용하면 된다. 템플릿 생성 방법템플릿을 사용하기 위해서는 아래와 같은 파일들이 필요합니다. 먼저 템플릿의 폴더의 이름을 정해준다. ViewController.xctempl.. -
ADB 설정 및 명령어 사용해서 .apk 설치 및 삭제
ADB 설정 및 명령어 사용해서 .apk 설치 및 삭제
2018.06.08안드로이드 apk를 설치하거나, 삭제할 때 adb 명령어를 이용하면 스마트 폰을 건들지 않고터미널에서 키보드 입력으로 편리하게 할 수 있다.먼저 Widnows, Mac 터미널 환경에서 사용하기 위해서는 경로(Path)를 잡아주어야 한다. ADB 환경 설정안드로이드 스튜디오나, Eclipse에서 ADT를 설치했을 경우 해당 경로로 이동한다.Android > sdk > platform-tools로 이동하면 adb 파일이 있을 것이다. Windows adb 설정1. 내 컴퓨터 오른쪽 마우스 클릭 > 속성 2. 좌측에 고급 시스템 설정 클릭 3. 고급 탭에 아래쪽 환경 변수 클릭 4. 아래 시스템 변수(S)에서 Path 클릭 후 편집 5. 기존 내용은 절대로 건들지 말고, 끝에다가 ;C:\안드로이드 디렉터리\s.. -
iOS 인앱 구매 (In-App Purchase) 정리 - ObjectiveC
iOS 인앱 구매 (In-App Purchase) 정리 - ObjectiveC
2018.06.07In-App 기능 활성화최근 프로젝트에 인앱 구매 기능을 넣고 추후에 까먹을까봐 정리를 하려고한다.먼저 인앱 기능을 넣고 싶은 프로젝트를 실행해서 Target > Capabillities 속성으로 이동한다.OFF > ON으로 변경하면 이제부터 이 프로젝트에서는 인앱을 사용할 수 있다. 그리고 애플 개발자 사이트에서 Certificates, Identifiers & Profiles로 이동한다.좌측 메뉴에서 Identifiers > App IDs에서 현재 인앱을 ON시킨 프로젝트의 번들 아이디 값과 동일한App IDs를 가진 프로젝트의 정보를 확인한다.해당 프로젝트의 In-App Purchase 항목이 Enable로 되어 있으면 기본 설정은 끝났다. In-App Source 구현먼저 인앱을 구현하기 위해서는.. -
마크다운(Markdown) 문법 정리
마크다운(Markdown) 문법 정리
2018.06.07마크다운(Markdown) 문법 정리깃허브(GitHub)를 사용하거나 지킬(jekyll)를 사용해봤다면 마크다운(Markdown)을 한번씩은 들어봤을 것이다. 특히 깃허브에 자신의 레포지토리에 관한 설명을 적을때 Readme.md에 도큐멘테이션 작업을 할 때 마크다운을 사용한다. 그럼 마크다운에서 자주 사용하는 문법에 대해서 알아보자. 제목가장 기본이 되는 제목의 마크 다운은 # ~ ###### 이다.HTML의 ~ 태그와 유사하고 #의 개수에 따라 글자의 크기가 달라진다. # == ### == ###### == 인용인용은 > 를 넣어서 작성한다.인용 테스트.들여쓰기 인용 테스트.계속 추가하면 계속 들여쓰기. 리스트순서가 없는 리스트는 * 또는 - 로 표현할 수 있다. tab을 이용하면 들여쓰기가 가능하다.. -
iOS StatusBar Style 변경
iOS StatusBar Style 변경
2018.06.05iOS StatusBar Style 변경iOS에서 StatusBar Style에는 Dark, Light 2가지의 색상이 있다. 화면별로 StatusBar의 색상을 변경하고 싶으면 다음을 적용해야된다. 첫번째,프로젝트 내에 있는 info.plist의 파일을 열어 Add Row로 다음 항목을 추가한다.View controller-based status bar appearance -> NO 두번째,AppDelegate에 다음 코드를 추가하면 StatusBar Style을 원하는 테마로 변경할 수 있다. Objective-C[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];SwiftUIApplication.shar.. -
iOS 9 이상 네트워크 설정 해결 방법
iOS 9 이상 네트워크 설정 해결 방법
2018.06.04iOS 9 이상 네트워크 설정네트워크 사용하는 앱에서는 반드시 다음 설정을 해야 한다. iOS 9 업데이트 되면서 보안관련 정책사항에 변화가 생겼다. iOS 9 이상부터는 앱에서 네트워크를 사용할 때 설정을 안해주면 다음과 같은 에러가 발생한다.Transport security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app's Info.plist file. 해결 방법 (Source Code)Xcode 프로젝트에 info.plist 파일을 우클릭 -> Open As -> Source Code로 편집하면 된다. xml 포맷에 맞게.. -
AutoLayout Set Frame Issue 해결
AutoLayout Set Frame Issue 해결
2018.06.04AutoLayout Set Frame Issue최근에 프로젝트를 진행하며 AutoLayout이 적용된 View A가 있었고, 아무런 제약조건이 없는 View B가 있었다. 제약조건이 없는 View B에 크기를 AutoLayout이 적용된 View A와 동일한 사이즈로 변경하려고 View A의 Frame 사이즈를 넣었더니 사이즈가 변경되지 않았다.- (void)viewDidAppear:(BOOL)animated { viewB.frame = CGRectMake(self.ViewA.frame.origin.x, self.ViewA.frame.origin.y, self.ViewA.frame.size.width, self.ViewA.frame.size.height); } 구글링 결과 AutoLayout이 적용되는 .. -
MacOS Eclipse SVN 플러그인 설치 및 연동하는 방법
MacOS Eclipse SVN 플러그인 설치 및 연동하는 방법
2018.04.30오늘은 MacOS Eclipse SVN 플러그인 설치 및 연동하는 방법에 대해서 알아보도록 하겠습니다.플러그인 설치 및 연동하는 방법에 앞서 이클립스와 JAVA가 설정되어있고 SVN 서버 정보가 준비가 되어있어야합니다. SVN 플러그인 설치Menu > Help > Eclipse Marketplace... 클릭합니다. 다음과 같은 화면이 나오는데 검색창에 SVN을 입력합니다. 필요 없는 부분은 체크를 해제하고 다 설치하고 싶으면 모두 체크 선택을 해주세요. Yes를 눌러 SVN을 설치합니다. 설치 진행 중입니다. 동의를 누르고 설치를 계속 진행합니다. 설치가 완료되었으면 ReStart Now를 눌러 Eclipse를 재실행합니다. SVN Repositories 연동하기Menu > Window > Show V.. -
이클립스 프로젝트 안드로이드 스튜디오로 마이그레이션 할 때 주의점 (출처)
이클립스 프로젝트 안드로이드 스튜디오로 마이그레이션 할 때 주의점 (출처)
2018.04.12주의점 1그냥 Open existing project 하면 에로사항이 꽃핀다.import project (Eclipse ADT, Gradle, etc.) 메뉴를 이용할 것 주의점 2때로는 이클립스 프로젝트 자체에서 수정해야 될 필요성이 있다.이클립스를 지워버렸으면 좀더 귀찮아진다… 주의점 3임포트 후에 라이브러리 설정을 잘 해줘야 한다.support-library 관련 충돌이 많이 일어난다.빌드버전/컴파일 버전/서포트 라이브러리 버전 등을 잘 맞춰야 한다. 주의점 4임포트가 끝난후에 Android Studio 프로젝트 루트 폴더에 res 폴더 및 src 폴더가 남아있다.한마디로 app/src/main 과 이중으로 폴더가 남아있는 것…이때문에 xml 레이아웃 수정시에 URI is not registered.. -
iOS ARC(Automatic Reference Counting) 자동 메모리 관리 기능 (출처)
iOS ARC(Automatic Reference Counting) 자동 메모리 관리 기능 (출처)
2018.04.11예전에 Xcode를 4.2로 업데이트한 후에 새로운 메뉴가 생겨서 이건 뭔가했었던 부분이 있었습니다. Use Automatic Reference Counting 메뉴인데 그냥 아 자동으로 객체들의 메모리를 관리해주는 아이구나 라고 생각만하고 지나갔었습니다. 불연듯 이게 뭔지 정확히 알아야 겠다는 생각이 들어 아침에 출근후 아이폰 개발자 사이트에서 레퍼런스를 읽어봤습니다. 아래는 그 내용을 정리한 내용입니다~ 영어가 짧아서 잘못 해석된 부분도 있을수도 있으니.. 이해해주시기 바랍니다 ㅋ 먼저 iOS Developer 사이트에 공개한 레퍼런스 링크를 알려드리겠습니다.https://developer.apple.com/library/ios/#releasenotes/ObjectiveC/RN-Transitionin.. -
iOS Push APNS 인증서 만드는 방법
iOS Push APNS 인증서 만드는 방법
2018.04.11이번에는 iOS Push APNS 인증서 만드는 방법에 대해서 알아보도록 하겠습니다.우선 가장 중요한 것은 애플 개발자 등록(1년 129,000원)이 되어있어야만 가능합니다. 이 자격에 해당되시는 분들은 아래를 따라하여 .pem파일을 만들어보도록 하겠습니다. APNS 인증서 발급을 위한 개인 인증서 만들기우선 런치패드를 실행하여 기타를 누르고 키체인 접근 아이콘을 눌러 실행합니다. 키체인 접근이 실행 되었다면 메뉴에 키체인 접근 > 인증서 지원 > 인증기관에서 인증서 요청.... 을 선택합니다. 이메일 주소를 입력하고 계속을 눌러 진행합니다. 파일을 어디에 저장할 것인지 선택 후 저장을 합니다. 암호화 알고리즘을 다음과 같이 선택 후 계속을 누릅니다. 다음과 같이 하였으면 CertificateSignin.. -
iOS Push 수신할 때 앱의 3가지 상태 확인
iOS Push 수신할 때 앱의 3가지 상태 확인
2018.04.10iOS Push 수신할 때 앱의 3가지 상태 확인iOS 모바일 앱에서 Push를 수신할 때, 앱의 상태는 다음의 세 가지가 있습니다. 1. Push로 앱이 실행된 상태. (백그라운드가 아니라 킬 된 상태)2. 앱이 포그라운드 실행 중인 상태.3. 앱이 백그라운드 실행 중인 상태. 각각의 상태에서 별도의 다른 동작을 위해 이 상태를 구분할 필요가 있습니다.AppDelegate 내에서 다음의 코드를 통해 구분이 가능합니다. - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { if (launchOptions && [launchOptions objectForKey:U.. -
MacOS에서 안드로이드 연결하여 파일 전송 및 불러오는 방법
MacOS에서 안드로이드 연결하여 파일 전송 및 불러오는 방법
2018.04.09안녕하세요~ 이번에는 MacOS에서 안드로이드 연결하여 파일 전송 및 불러오는 방법에 대해서 설명하려고 합니다.Mac에서 안드로이드를 연결하여 .apk파일을 넣어야하는 상황이였는데, 연결해도 아무런 반응이 없었습니다.그래서 인터넷을 검색 중 다음 프로그램을 찾았습니다. Android File Transfer 다운로드DOWNLOAD NOW 버튼을 눌러 프로그램을 다운로드합니다. Android File Transfer 설치Android 파일 전송 아이콘을 드래그하여 Applications에 놓아줍니다. 안드로이드 파일 전송 (MTP) 설정먼저 안드로이드를 USB를 이용하여 연결합니다.여기서 중요한 것은 파일 전송 (MTP) 방식으로 되어 있어야하고 허용을 눌러줍니다.안드로이드 상태창에 보면 USB 방식이 나.. -
MacOS 런치패드(Launchpad) 배열 늘려 사용하기 - 꿀팁
MacOS 런치패드(Launchpad) 배열 늘려 사용하기 - 꿀팁
2018.03.26안녕하세요. 오늘은 MacOS 런치패드(Launchpad) 배열 늘려 사용하는 방법에 대해서 알아보도록 하겠습니다. 런치패드(Launchpad)런치패드의 가장 큰 장점은 직관적이고 쉽게 앱에 접근할 수 있다는 건데요. 아이폰과 같은 사용자 인터페이스 덕분에 맥을 사용한지 얼마 되지 않은 유저가 쉽게 맥을 사용할수 있게 해줍니다. 또한 iOS처럼 앱을 폴더로 묶을 수도 있고, 여러 페이지에 나누어 담을 수도 있습니다. 런치패드는 기본적으로 세로 5줄 x 가로 7줄로 총 35개의 아이콘을 표시해 줍니다. 하지만 모니터 해상도나 화면 크기에 따라 아이콘이 너무 커 보이기도 하고 프로그램이 늘어날수록 페이지가 너무 많아져서 사용에 불편함이 생길 수 있는데요. 이럴 때 터미널 명령어를 이용하여 한 화면에 표시되는.. -
Xcode 테마(Theme) 다운로드 및 적용하기
Xcode 테마(Theme) 다운로드 및 적용하기
2018.03.18안녕하세요~ 이번에는 Xcode 테마 다운로드 및 적용하기에 대해서 알아보도록 하겠습니다.개발자 프로그래밍에 영향을 주는 것 중에 하나는 에디터의 테마라고 생각합니다.자신에게 맞게 색상을 변경하면 눈의 피로감도 줄일 수 있고 집중력 또한 높일 수 있다고 생각합니다. Xcode Preferences 테마(Theme) 확인Xcode > Preferences > Fonts & Colors 이동먼저 기본적으로 Xcode에서는 10개의 테마를 제공해줍니다. 10가지의 테마 중 마음에 드는 테마가 있다면 선택하면 됩니다. GitHub 테마(Theme) 다운로드 및 설치 (https://github.com/hdoria/xcode-themes)GitHub로 이동하시면 50가지 이상의 테마들을 확인할 수 있습니다.여기서.. -
MacOS High Sierra에서 VirtualBox 설치 오류 시 해결 방법
MacOS High Sierra에서 VirtualBox 설치 오류 시 해결 방법
2018.02.10MacOS High Sierra에서 VirtualBox 설치 오류MacOS High Sierra에서 VirtualBox를 설치하다 보면 다음과 같은 오류를 나타날 수 있습니다.이런 현상이 발생될 때에는 다음과 같이 진행하시면 됩니다. MacOS High Sierra에서 VirtualBox 오류 해결좌측 상단에 사과 아이콘을 클릭하여 시스템 환경설정을 실행합니다. 보안 및 개인 정보 보호 아이콘을 클릭합니다. Allow 버튼을 눌러 권한을 허락합니다. 다시 VirtualBox를 설치를 진행하면 정상적으로 설치 되는 것을 확인할 수 있습니다. -
윈도우10 시작메뉴 윈도우7처럼 변경하기
윈도우10 시작메뉴 윈도우7처럼 변경하기
2018.02.09윈도우10 시작메뉴 윈도우7처럼 변경하기윈도우10 시작 메뉴를 사용하다 보면 윈도우7의 시작 메뉴가 그리울 때가 있으실 겁니다.처음 사용하면 복잡하고 윈도우10에서 기본적으로 보이는 기능들은 사용하지 않는 사람들에게는 불편하고 리소스만 잡아먹는 쓸데없는 항목으로 여겨질 수 밖에 없습니다. 운영체제가 바뀌면 거기에 빨리 적응하는 것도 중요하겠지만, windows 10의 화려한 라이브 타일을 사용할 필요성을 못 느끼면서 사용에 불편함을 겪고 있다면 예전의 방식으로 되돌리는 것도 괜찮은 선택 같습니다.??다음과 같이 윈도우10 시작 메뉴를 윈도우7 스타일로 바꾸는 방법에 대해서 설명해 드려보겠습니다. Classic Shell 다운로드 및 설치하기 (다운로드)Classic Shell 프로그램은 윈도우 10의 테.. -
카드로 보는 뉴스
카드로 보는 뉴스
2018.01.28카드로 보는 뉴스 (이동)1. 간단함직장인들과 수험생들이 시사이슈를 공부하거나 간단하게 읽을거리를 찾을 때 신문이나 뉴스, 칼럼 등 중, 장문보다 심지어 단문보다도 더 쉽고 명확하고, 간단하게 시사, 뉴스거리를 접할 수 있습니다.2. 정보량의 습득많은 정보를 간편하게 습득이 가능합니다.3. 효율성자투리시간을 이용해서 많은 정보를 접할 수 있습니다.4. 휴대성카드 뉴스를 메모해 놓는다면 여기저기서 볼 수 있습니다.5. 면접 대비용많은 정보, 이슈화된 기사를 적은 시간, 많은 정보량으로 능률적 대처가 가능합니다. -
포트 범위 사용 가능성 검증
포트 범위 사용 가능성 검증
2018.01.27포트 범위 사용 가능성 검증0번 ~ 1023번: 잘 알려진 포트 (well-known port) 1024번 ~ 49151번: 등록된 포트 (registered port) 49152번 ~ 65535번: 동적 포트 (dynamic port) 포트 설명 상태 0/udp 예약됨; 사용하지 않음 공식 1/tcp TCPUMX (TCP 포트 서비스 멀티플렉서) 공식 7/tcp ECHO 프로토콜 공식 7/udp ECHO 프로토콜 공식 9/tcp DISCARD 프로토콜 공식 9/udp DISCARD 프로토콜 공식 13/tcp DAYTIME 프로토콜 공식 13/udp DAYTIME 프로토콜 공식 17/tcp QOTD (Quote of the Day) 프로토콜 공식 19/tcp CHARGEN (Character Genera..