Android

Caused by: java.lang.IllegalStateException: Fragment already active

Caused by: java.lang.IllegalStateException: Fragment already active at android.app.Fragment.setArguments(Fragment.java:696) … 위와 같은 에러가 난다면 setArguments()의 주석을 먼저 확인해보자. /** * Supply the construction arguments for this fragment. This can only * be called before the fragment has been attached to its activity; that * is, you should call it immediately after constructing the fragment. The * […]

Caused by: java.lang.IllegalStateException: Fragment already active 더 읽기"

안드로이드의 어댑터(Adapter)

먼저 어댑터 패턴부터 살펴보자. 아래 그림이 보통 Adapter 패턴을 설명할 때 사용되는 인용되는 그림이다. 위 그림을 간단히 설명하면 Client가 Adapter의 인터페이스의 시그내처만 참고하여 구현을 하면, 상황에 따라 Adaptee에 맞는 Adapter를 사용하는 것만으로 수정 없이 사용이 가능하다는 것이다. 실생활 예로 보면 위의 설명이 더이해가 잘 될 것이다. 하지만 패턴이 실제에서도 적용되기는 쉽지 않다. 안드로이드에서는 Client와 Adapter가

안드로이드의 어댑터(Adapter) 더 읽기"

Jericho로 HTML 파싱하기

안드로이드와 iOS 모두 웹뷰를 지원하므로, 앱에 웹 페이지를 끼워넣을 수 있다. 하지만, 브라우저 대비 성능이 떨어진다거나 브라우저와 동일하게 동작하지 않는 등 자잘한 이슈들이 늘 따라다니는게 웹뷰다. 어쨌든, 웹뷰를 이용해 페이지를 보여주라는 가이드를 받았지만 뷰(View)로 처리 하는 것이 더 좋다고 생각한다면 HTTP를 통해 서버와 통신하여 데이터를 가져온 후 네이티브 코드로 화면을 보여주면 된다. 여기서 일부 필요한

Jericho로 HTML 파싱하기 더 읽기"

안드로이드의 상위 호환성

지난 글에서 AndroidManifest.xml의 SdkVersion에 대해 이야기 했다. 안드로이드 개발자 사이트에서 이 SdkVersion들에 대한 글을 읽다 보면  이런 말이 나온다. Android applications are generally forward-compatible with new versions of the Android platform. 라고 나와있다.  상위호환성이 뭔가? 상위호환성을 이해하기 위해 하위호환성을 먼저 살펴보자.  위키피디아(영문)에 따르면 이전 버전에서 만든 입력값을 처리할 수 있다면 ‘하위 호환성’이 있다고 한다. 자바를

안드로이드의 상위 호환성 더 읽기"

이클립스 ADT 개발종료

이클립스의 ADT(Android Developer Tools)의 개발이 공식적으로 종료되었다. 안드로이드 개발자 사이트의 SDK를 받는 페이지에 가면 가운데에 떡 하니 개발이 종료되었으니, 안드로이드 스투디오로 시작해보라는 메시지가 보인다. If you’re a new Android developer, you should consider starting with Android Studio, because the ADT plugin for Eclipse is no longer in active development. 인텔리제이 기반의 안드로이드 IDE인 Android Studio의

이클립스 ADT 개발종료 더 읽기"