[Android] Launcher Icons

이전에도 런쳐 아이콘을 등록한 적이 있지만 최근에 Android Studio에서 바뀐점이 있어 포스팅합니다.

Launcher Icons

런처 아이콘은 사용자에게 앱을 대표하여 보여주는 그래픽 아이콘입니다.
Google Developers 문서에 이런곳에 사용된다고 합니다.

  1. 기기에 설치된 앱의 목록과 메인 스크린
  2. 앱에 대한 단축키를 나타낼 수 있음
  3. 런처 앱에서 사용할 수 있음
  4. 앱 첫인상을 뚜렷이 심어줄 수 있음
  5. 사용자가 Google Play에서 앱을 찾는데 도움을 줄 수 있음
TIL

[Android] About ConstraintLayout

오늘은 최근에 사용하기 시작한 ConstraintLayout에 대해 이야기해볼까 합니다.
“이제야 ConstraintLayout을 사용하기 시작했다구요!?”
네.. 그렇습니다.
두달 전까지만 해도 저는 LinearLayout과 RelativeLayout을 이용해 UI를 그렸습니다.
하지만 새 프로젝트를 시작하며 ConstraintLayout과 CoordinatorLayout을 사용해보고는 자연스럽게 LinearLayout과 RelativeLayout의 사용 빈도가 줄어 들었습니다.
특히 RelativeLayout은 더욱요.

ConstraintLayout

이 단어를 검색하기만 해도 수많은 사이트들이 쏟아져나올겁니다.
한 2년 전 쯤에 처음 접한것 같아요.
한창 LinearLayout과 RelativeLayout을 사용하는 제게는 굳이 왜 써야되는지 이해가 안갔습니다.

TIL

[Android] Fragment Example

오늘 포스트는 이전 포스트에서 언급했던 Fragment에 대해서 간단한 예제를 만들어 보려고 합니다.
주말에 포스팅 하려고 했는데 시간도 시간이고 개인적인 스터디를 따로 하고 있어서 짬이 나지 않네요 ㅜㅜ.
개인적인 스터디에 대해서 필요한 포스팅은 또 따로 진행하도록 하겠습니다.
각설하고 시작해봅시다.

어떤 예제를 만들 것인가?

사실 너무 간단한 예제입니다.
스크린샷부터 볼게요.

2개의 Fragment를 만들고(분홍색, 파란색)
Fragment 1 버튼을 눌렀을 때는 분홍색 Fragment가
Fragment 2 버튼을 눌렀을 때는 파란색 Fragment가 보이도록 할 겁니다.

[Android] About fragment

좋은 예제나 라이브러리에 심심치 않게 Fragment를 사용하는것을 보았습니다.
잘은 모르겠지만 Activity와 비슷한 것 같은데..
명확한 차이를 알 수 없어 알아보았습니다.

일단 Fragment가 나오기 전 상황을 좀 알아야 겠군요.

Activity, Context

안드로이드 시작과 함께 Activity가 무엇인지 Context가 무엇인지 알아야 했습니다.
기존에 C, C++, Java를 배울때와는 사뭇 다르고 저에게는 러닝 커브또한 굉장히 높았습니다.
점점 익숙해질 무렵 Activity는 어플리케이션 구성 요소로 단어 그대로 사용자가 어떠한 행위를 하기 위해 작용할 수 있는 화면이고
Context는 Activity에 따라 정보를 담고 있는 인터페이스라는것을 알게되었습니다.
이 두가지의 개념으로 화면단위를 컨트롤하고 문제없이 개발이 되는 줄 알았습니다.

어플리케이션의 덩치는 날로 커져갔습니다.
단순히 Multi Activity로 해결되던 어플리케이션이 그 이상의 수준을 넘어 Super Ultra Multi Activity로 엄청난 서비스를 제공하는 어플리케이션이 등장합니다.

그런데 여기서 문제점이 생깁니다.
많이 흡사한 페이지가 여러개인데.. 그때마다 Activity와 Layout이 하나씩 생성되고 중복 코드들이 기하급수적으로 늘어나게 됩니다.

이때 Google에서 Fragment를 조용히 내놓습니다.

TIL

[Android] 앱이 갑자기 꺼지는 이슈

이번 포스트는 며칠전에 맞닥들인 이슈와 해결을 서술할까 합니다.

WTF?

구글맵을 사용하는 앱을 한창한창 개발중에 이슈가 터졌습니다.
구글맵 화면에서 마커를 보여주거나 이미지를 보여주는등 이런저런 처리를 하는데 앱의 퍼포먼스가 갑자기 떨어지기 시작했습니다.
그러더니 앱이 갑자기 꺼지는 사태가.. 심지어 앱이 비정상 종료되었고 다시 실행하겠냐는 팝업이 뜨지 않았습니다.
테스트로 사용한 폰은 무려 Galaxy S8+였는데..
사실 이 페이지를 그때 생성한것이 아니고 한달전부터 생성해서 써오던 페이지였는데 이런 크리티컬한 이슈라니 조금 황당했습니다.

원인을 찾자

항상 하던대로 로그캣을 켜봤습니다.

[iOS] 새로운 뷰컨트롤러를 시작하는 방법

iOS

이틀…

버튼을 눌렀을때 메뉴페이지를 띄우는 부분을 구현할 차례가 왔습니다.
아직 iOS개발 초짜다 보니 이런것을 알아가는데도 시간이 굉장히 오래 걸리는 것 같습니다.
무려 이틀이나 걸렸네요.
검색해도 잘 안나오는 것이 안드로이드처럼 접근하면 안될 것 같다는 느낌이 듭니다.
각설하고 정리를 시작합니다.

ViewController

프로젝트 생성시 만들어지는 뷰 컨트롤러를 Main으로 잡았습니다.

ViewController는 위와 같습니다.
오른쪽 위에 메뉴를 눌렀을때 MenuViewController가 뜨도록 할거에요.

TIL