Software

startActivity가 안돼요

startActivity 메소드(startActivityForResult 메소드 포함)는 파라미터로 전달된 인텐트(Intent) 정보로 액티비티를 실행한다. 안드로이드 책 처음마다 이 메소드 소개는 빠지지 않는다. 그렇게 많이 사용하는데, 왜 안될까? 확인이 쉬운 것부터 살펴보자. 액티비티 호출을 위해 만드는 인텐트 유형은 명시적 인텐트와 암시적 인텐트로 나뉜다. 인텐트를 잘 만들었는지 살펴보자. 명시적 인텐트는 호출할 대상 패키지와 패키지 속 액티비티 정보를 넣어야 한다. 명시적 인텐트를 […]

startActivity가 안돼요 더 읽기"

메인 액티비티 실행이 안돼요

일반적으로 앱은 아이콘이 있다. 아이콘을 누르면 진입점 역할의 액티비티가 실행된다. 이 액티비티를 편의상 메인 액티비티라고 부르자. 메인 액티비티를 만드는 법은 간단하다. AndroidManifest.xml에 선언된 액티비티 중 메인으로 만들고 싶은 것을 골라 아래와 같이 MAIN 액션과 LAUNCHER 카테고리가 포함된 인텐트 필터를 추가하면 된다. <intent-filter> <action android:name=”android.intent.action.MAIN” /> <category android:name=”android.intent.category.LAUNCHER” /> </intent-filter> 위와 같이 인텐트 필터를 선언하면, 런쳐는

메인 액티비티 실행이 안돼요 더 읽기"

디자인 패턴에서 말하는 투명성

디자인 패턴 공부를 하면 투명성(transparency)이란 단어를 만난다. 이 단어에 대한 설명은 아무리 읽어도 쉽게 와닿지 않는데, 아마도 번역이 부적절하기 때문이라 생각한다. transparency는 컴포지트 패턴에서 같은 부모를 상속받은 객체 컬렉션과 개별 객체 두 클래스 중 한 쪽에는 불필요한 메소드가 있을 때 이를 구현할 필요가 있는지 설명하는 과정에서 언급된다. 구현하는 경우 부모 클래스만 이해하면 자식 클래스를 일일이

디자인 패턴에서 말하는 투명성 더 읽기"

블루라이트 앱 예제

시력에 나쁜 영향을 주는 블루라이트를 감소시키는 앱이 구글 플레이 스토어에 많이 올라와 있다. 블루라이트를 감소시키는 원리는 간단한데, 파란색 표현량을 줄여서 눈에 부정적인 영향을 줄이는 것이다.물론, 색표현이 왜곡되지만 사진이나 영상을 보는 경우를 제외하면 사용에 문제가 없기 때문에 사람들이 많이 사용한다. 만드는 방법은 화면에 필터를 씌워 파란색 광원을 줄인다. WindowsManager를 이용해 이에 대한 샘플을 만들어 보았다. 자세한

블루라이트 앱 예제 더 읽기"