Software

adb shell로 대량의 apk 설치하기

많은 apk 파일을 한꺼번에 설치해야하는데 스크립트까지 만들기도 귀찮다면, adb shell을 이용해보자. 설치할 apk 파일들을 단말에 먼저 옮긴 후 루프문으로 설치하게 하면 된다. 각각의 명령어는 아래와 같다. >adb push ./apk /sdcard/ >adb shell for apk in /sdcard/*.apk; do pm install -r $apk ; done 이 때 adb shell에서는 모든 파일 선택 특수문자가 없으니, 폴더를 지정하여 넣는 […]

adb shell로 대량의 apk 설치하기 더 읽기"

경우에 따라 GET 요청 다르게 보내기(Conditional get request)

HTTP 프로토콜에서는 캐싱을 위해 서버에서 받은 자원이 그 후로 변경이 되었는지 확인하는 정보를 주고 받을 수 있다. 처음 자원을 요청할 때는 당연히 요청만 하고, 두번째 요청 때는 첫번 째 요청의 응답에 함께 온 헤더 정보를 참고하여, 변경사항이 있는지 물어본다. 최초 요청 시에는 아래와 같이 요청만 할 것이다. GET /sample.html HTTP/1.1 Host: example.com 이에 대한 응답을

경우에 따라 GET 요청 다르게 보내기(Conditional get request) 더 읽기"

px, dp, dpi, cm

이미 알고 있는 내용이지만, 시작하기 전에 단위를 간단하게 정리부터 해보자. dp : 안드로이드에서 사용하는 가상의 단위이다. (오차가 있을 수 있으나, 최대한)같은 dp가 단말의 해상도나 화면 크기에 상관 없이 같은 물리적 길이를 갖는다. px : 물리적 해상도를 표시하는 단위 픽셀(Pixel)이다. 개발자 뿐 아니라 컴퓨터 사용자에게 가장 친숙한 단위다. 아이폰을 비롯한 다양한 모바일 기기들이 px 단위를 사용해

px, dp, dpi, cm 더 읽기"

복붙해 쓰는 #define

알고리즘 문제를 풀 때, define 해둘만한 유용한 메소드들이다. define은 컴파일전에 문자열을 치환하는 것이기 때문에, 각 원소를 괄호”()”로 감싸는 것을 주의하자. 절대값 계산 #define abs(x)   (((x) > 0) ? (x) : -(x))  x가 더 큰가? #define max(x,y)   (((x) > (y)) ? (x) : (y))  x가 더 작은가? #define min(x,y)    (((x) < (y)) ? (x) : (y)) 홀수 #define

복붙해 쓰는 #define 더 읽기"

내가 몰랐던 힙과 스택

보통 힙과 스택을 이야기할 때, 자료구조에서 사용하는 범용적 단어와 실제 프로그래밍 언어의 구현체를 혼용하여 쓰곤 한다. 자료구조의 힙과 스택은 컴퓨터 과학에서 이야기하는 범용적인 단어이고, 프로그램에서는 내 프로그램이 사용하는 메모리의 특정 영역을 가리키는 말이다. 힙과 스택은 자료구조이므로 여러 형태의구현할 수 있다. 참고로, 언어 표준에서는 스택이나 힙이 RAM에 있을 것이라는 보장을 하지 않는다. 심지어 고급 언어의 대표격인

내가 몰랐던 힙과 스택 더 읽기"