Programming

[iOS] iPhoneXS UUID 알아내는 방법

회사에 iPhoneXS가 생기면서, 애플 개발자 사이트에 기기등록을 해야했다.

늘 하던대로 아이폰을 맥북에 연결하고 iTunes를 열고 UUID를 확인하려고 했는데, 아무리 이리저리 눌러봐도 UUID를 확인할 수 없었다.

이리저리 찾아보면서 방법을 찾아냈기에 블로그에 기록한다.

XCode를 실행해서 상단 메뉴 “Windows > Devices and Simulators” 로 들어가면 현재 연결 된 기기의 정보를 확인할 수 있다.

 

무제

▲ Windows > Devices and Simulators 메뉴는 여기에 있다.

 

스크린샷 2018-11-19 오후 6.54.34▲ 빨간 네모 안에 있는 Identifier 정보를 복사해서

 

스크린샷 2018-11-20 오후 2.39.22

▲ 기존의 UDID 입력란에 저장하면 끝!

Programming

[WordPress / nginx] Permalink(고유주소) 형식을 바꿨을 때 404 에러가 나는 경우

고유주소 형식을 xxx.net/page_id=111 에서 xxx.net/postname 형태로 바꿨는데, 계속 404 에러가 발생했다.
그래서 열심히 검색을 해봤는데, 대부분 아파치에 띄우기 때문에 그에 대한 예시만 나와있었다.
nginx를 사용하는 경우에는 conf 파일에 아래와 같은 항목을 추가해주면 된다.

location / {
    try_files $uri $uri/ /index.php?$args;
}

이렇게 하고 nginx를 재시작 해주면(재시작 명령은 “sudo service nginx reload”) 된다.

Programming

[Android / Docker] Android Emulator와 Docker for mac의 충돌 시 해결 방법

Android Studio에서 Android Emulator를 활용해서 Run 또는 Debug를 하려고 하는데, “waiting for target device to come online” 이라는 메시지만 나오면서 진행이 안되는 일이 발생했다.
검색해보니 “Docker for mac” 과의 충돌이 있는 것 같다.

해결 방법은

$brew cask install intel-haxm

을 실행해서 haxm을 최신버전으로 세팅해주면 된다. 정확한 원인과 왜 해결되는지에 대해서는 아직 확실히 모름…

Programming

[logcat] logcat에서 특정 문자열 포함된 로그만 보기

Xcode로 cocos2d-x 개발하면서 log를 볼 일이 있는데,
이클립스를 사용하지 않다보니 안드로이드 로그 보기가 불편하다.
이 때 adb에 있는 logcat으로 확인할 수 있는데, 잡다한 로그가 다 표시되기 때문에
내가 원하는 로그를 찾기가 쉽지 않다.
이럴 때 grep 명령어를 써주면 내가 원하는 문자만 포함된 로그를 볼 수 있다.
ex) ‘cocos2d’가 포함된 로그를 보고 싶을 때
$adb logcat | grep cocos2d
이렇게 하면 된다. 생각보다 쉬운데, 이상하게 자꾸 까먹어서 포스팅.

Programming

[C++] C++11의 override 키워드

cocos2d-x 3.0 이상부터 C++11이 적용되어서 나름의 신세계를 경험하고 있다.
auto, lambda 등이 있지만, 가장 많이 쓰게 되는 건 override 키워드인 것 같다.
상속받은 클래스에서 상위클래스의 함수를 override 할 때 override 키워드를 붙여주면 두 가지의 장점이 있다.

1. 어떤 함수가 override한 함수인지 쉽게 알아볼 수 있다.
– 그냥 선언되어 있을 경우 이 함수가 override 한 함수인지, 이 클래스에서 만들어진 함수인지는 쉽게 알 방법이 없다. 하지만 override 키워드를 붙여두면 나중에 코드를 읽을 때 쉽게 파악할 수 있다.

2. 상위 클래스에 없는 함수를 체크할 수 있다.
– 이 케이스가 더 와닿는 부분인데, 함수를 override 하기 위해 이 키워드를 붙여두면 만약에 상위 클래스에 없는 함수일 경우 컴파일 에러가 발생한다. 이를 통해 override 할 때 함수명에 오타를 내는 경우도 없앨 수 있고, 상위 클래스에 있는 줄 알았는데 막상 없는 함수를 override 한답시고 사용하는 경우를 줄일 수 있다.

C++11에서는 상위클래스의 함수를 override 할 경우 이 키워드를 꼭 붙여주도록 하자.

Programming

[Ruby on Rails] DB에 컬럼 추가하는 migrate 파일 만들기

이미 만들어져 있는 DB에 컬럼을 추가하려면
generate 명령어를 사용해서 migrate 파일을 만들어줘야 한다.

ex) rails generate migration add_progress_to_posts progress:int

위 명령어를 입력하면 migrate 파일이 생성된다.
파일명은 “timestamp(그때그때 다름)_add_progress_to_posts.rb” 와 같이 생성된다.

위와 같이 posts 테이블에 progress라는 int형 컬럼을 추가하는 migrate 파일이 만들어진다.
이후에 rake db:migrate 명령을 실행하면 해당 내용이 적용되어 테이블에 컬럼이 추가된다.
(물론 이미 있는 데이터에는 자동으로 데이터가 추가되지 않으므로 이를 위해서는 추가 작업이 필요하다.)