안드로이드 개발력 향상하기

안드로이드 앱개발에 필요한 팁과 학습방법에 관한 글입니다. 아래 정보를 잘 활용하여 안드로이드 개발 학습에 도움이 되거나 실무에 적용하여 업무에 도움이 되기를 바랍니다.

안드로이드 스튜디오의 ‘라이브 템플릿’을 사용하여 개발 향상

아래 링크는 안드로이드 스튜디오 팁을 모아둔 곳입니다.
https://plus.google.com/u/0/collection/wtO0PB
여기서 가장 쉽고 빠르게 쓸 수 있는 기능 중 하나는 라이브 템플릿 기능으로, 반복되는 메서드를 임의로 지정한 약자를 입력하면 풀네임으로 자동변경되는 기능입니다.
ex) fbc + Enter -> findViewById로 변환

라이브 템플릿 기능에 대해서 아래 링크를 참고하면 좀 더 많은 정보를 확인할 수 있습니다.
https://www.bignerdranch.com/blog/android-studio-live-templates

안드로이드에서 기본적으로 지원해주는 라이브 템플릿외에도 사용자가 커스텀하게 만들 수도 있습니다. 아래 링크는 많이 사용되는 메서드들에 대한 라이브 템플릿을 커스텀하여 공개하고 있습니다.
https://github.com/keyboardsurfer/idea-live-templates

라이브 템플릿은 반복되는 메서드 입력을 최대한 줄여 개발 시간을 단축시킬 수 있는 가장 좋은 방법입니다.
https://medium.com/@aditlal/must-have-tools-for-android-development-d76ae66f409f#.qhhck9bvk

앱을 디버깅하는 동안 안드로이드 스튜디오와 함께 사용할 수 있는 도구

Library methods count – 안드로이드의 DEX파일 포맷 구조상 65만 개의 메서드로 제한되어 있습니다. 해당 툴을 이용하면 안드로이드 라이브러리의 메서드 개수를 확인 할 수 있습니다.

Stetho – 페이스북에서 만든 안드로이드 앱을 쉽게 감시할 수 있는 라이브러리입니다. 네트워크 트래픽을 디버깅하는데 가장 좋습니다. 이뿐만 아니라 SQLite 데이터베이스, 쉐어드 프리퍼런스도 쉽게 감시할 수 있습니다. 크롬 브라우저의 인스팩트 기능을 이용하기 때문에 웹 개발경험이 있다면 훨씬 쉽게 사용할 수 있습니다.

LeakCanary – 메모리 릭을 감지해주는 라이브러리로 코드 한 줄만으로 쉽게 사용 가능합니다. 릭 탐지 시 별도의 UI화면으로 발생되는 위치와 경로를 알려줍니다.

Gradle, Please – Gradle기반의 라이브러리를 쉽게 찾아줍니다. 라이브러리 이름만 입력하면 최신 버전으로 라이브러리를 컴파일할 수 있는 구문을 찾아줍니다.

Android Arsenal – 안드로이드와 관련된 라이브러리를 한 번에 볼 수 있습니다. 항상 최신의 버전을 유지하며 카테고리 기반으로 빠르게 업데이트됩니다.

Android UI OpenSource – 안드로이드 UI와 관련된 오픈소스를 한 번에 볼 수 있습니다.

AndroidTool Mac – 맥 개발자들을 위한 안드로이드 툴입니다. UI 환경에서 빠르게 화면 캡처, 비디오 캡처, APK 끌어서 설치를 할 수 있습니다.

ButterKnifeZelezny – 안드로이드 스튜디오 플러그인으로 선택한 레이아웃 XML에서 버터나이프 인젝션으로 변환해줍니다.

Adb-idea – ADB명령을 쉘이 아닌 안드로이드 스튜디오의 액션 창에서 작동할 수 있는 플러그인입니다.

AndroidWeekly – 매주 최신의 안드로이드 관련 소식을 메일링으로 받아 볼 수 있습니다.

Android Developers Youtube Channel – 구글 안드로이드 공식 유튜브 채널이며, 가장 최신의 안드로이드 기술을 접할 수 있습니다.

완성된 앱으로 학습하기 

Plaid – 디자인 뉴스와 영감을 제공하기 위한 안드로이드 앱입니다. 안드로이드 UI처리에 대해 전반적인 학습을 할 수 있습니다.

Kickstarter – 구글의 킥스타터 앱으로 예술, 디자인, 영화, 게임 음악 등으로 구성된 수천 개의 프로젝트를 탐색할 수 있습니다. 디자인 가이드라인부터 최신 기술을 한 번에 공부할 수 있습니다.

디자이너 없이 안드로이드 앱 디자인 할 수 있는 몇 가지 방법

구글의 머트리얼 디자인 발표 후 안드로이드 앱의 디자인이 한결 깔끔하고 심플하게 변했습니다. 다양한 컬러와 복잡한 패턴을 사용하던 앱의 UI가 하나의 컬러와 도형으로 훨씬 심플해졌습니다. 이렇게 심플해진 UI로 인해 디자이너의 역할은 어느 때 보다 줄어들었습니다. 또한 구글의 머트리얼 디자인 가이드, 디자인 라이브러리, UI 툴이 한몫을 했다고 생각합니다.

개발자가 디자이너 없이도 안드로이드 앱 UI 디자인을 하기 위한 몇 가지 방법을 소개합니다.

 

1. 레이아웃

앱의 정보를 어떻게 배치하며 색상과 크기는 어떻게 지정할지에 대해서 많은 고민이 필요합니다. 머트리얼 디자인 가이드를 통해 UI 요소별 배치방법 및 스타일 가이드를 이용하면 훌륭하게 앱 디자인을 할 수 있습니다. 사용자가 편하게 볼 수 있도록 리스트뷰 행의 높이나 여백 등의 기정된 가이드라인에 따라 레이아웃에 적용만 하면 됩니다. 마진, 패딩은 8dp단위로 사용하면 훨씬더 깔끔하고 정돈된 디자인이 됩니다.

b879ecdd355781d2bfd5d26ea11aa1f6

안드로이드 디자인 서포트 라이브러리를 사용하면 가이드된 UI를 사용할 수 있습니다. 개발자가 직접 포토샵으로 리소스를 만들어 추출할 필요가 전혀 없습니다. 디자인 서포트 라이브러리를 통해 UI를 사용하고 가이드를 통해 여백이나 사이즈 등 수치만 잡아주시면 됩니다. 디자인 라이브러리 외 다양한 오픈소스를 활용하시면 됩니다.

2. 컬러 값

디자이너 없이 개발자가 좋은 컬러 값을 추출하기란 힘듭니다. 하지만 머트리얼 디자인 가이드에 플랫 하며 아름다운 색상이 이미 추출되어 있습니다. 개발자는 앱의 BI에 맞는 색상을 한 가지 선택해 추천하는 비슷한 톤의 컬러를 앱에서 사용하면 이질감 없이 통일된 UI를 구현할 수 있습니다.  컬러값을 미리보고 추출해주는  MaterialPalette사이트를 추천합니다.

5508a9714614b5de3ad9ff5163acb97d

3. 아이콘

구글이 공개한 저작권 없는 수백가지의 머트리얼 아이콘을 사용하면 됩니다. 웬만한 액션의 아이콘을 지원하고 계속 추가되고 있기 때문에 지속적으로 사용 가능합니다. 또한 dpi별로 추출 가능하며, 백터 Drawable을 사용하기 위한 SVG로도 추출 가능합니다.

머트리얼 아이콘은 안드로이드 스튜디오에서 New – Image(Vector) Asset메뉴를 통해서 쉽게 추가 가능합니다.

a1dd532e9beab8d56ed4a77f9fe41187

4. 런처 아이콘 만들기

앱의 아이콘은 앱의 가장 중요한 요소입니다. 사용자들이 앱 설치 전 UI의 느낌을 암시해주는 중요한 역할을 합니다. 앱의 아이콘에 따라 사용자가 설치할지 말지를 고민하게 할 수도 있는 큰역할을 합니다. romannurik가 만든 AndroidAssetStudioLauncher Icon Generator를 이용하면 손쉽고, 저작권에도 걸리지 않는 앱을 아주 간단하게 만들 수 있습니다. 최신 안드로이드(Nougat) 런처 스타일의 아이콘으로도 만들 수 있습니다.

c27b15d95c39e1915632cd12a6442177

다양한 설정을 통해 앱의 아이콘을 만들 수 있으며, dpi별로 추출해주기 때문에 편합니다.

5. 애니메이션

AndroidIconAnimator와 아이콘 리소스를 통해 간단한 애니메이션도 직접 만들 수 있습니다. SVG아이콘 리소스를 이용하여 아이콘이 애니메이션 하는 백터드로워블을 추출 할 수 있습니다. AndroidIconAnimator를 통해 기존 GIF의 프레임 하나씩 보여주는 방식보다 훌륭한 애니메이션을 만들 수 있습니다.

e7f3d92cf74b599838f70c2feda3ffa5

이렇게 머트리얼 디자인 가이드와 리스소만 잘 활용한다면 디자이너가 없어도 요즘 유행하는 앱 디자인을 갖출 수 있을 것입니다.

머트리얼 디자인 가이드를 잘 활용한 앱

a444e587ded8c2b5ef87a2253bc869de

안드로이드 디자인 관련 작업 좀더 쉽게 하기

안드로이드는 디자인은 개발에 있어서 또는 디자인에 있어서 많이 복잡하고 까다로운건 사실이다. 다양한 DPI에 맞는 사이즈를 제작해야되며, 디자이너들에게는 생소한 나인패치라는것도 해봐야 한다.

안드로이드 디자인을 처음으로 하거나 아직 미숙한 디자이너들에게 도움될 만한 사이트를 소개하겠다. 안드로이드 SDK에 나인패치 툴이 있긴 하지만 설치하는 번거로움을 피할수 있고, 즉각적인 이미지를 확인 할 수 있다.

Simple Nine-patch Generator

이 외에도 얼마전 Navigation Drawer의 표준가이드가 생기면서 이에 맞는 인디케이터 아이콘도 생성할 수도 있다. (Navigation Drawer Indicator Generator)

노티케이션 아이콘도 API11 전후로 표준 가이드가 바꼈는데, 이에 맞게 아이콘을 변형해준다. (Notification Icon Generator)

이외 아래 다양한 디자인 관련 작업들이 가능하다. (참고로 크롬브라우저에서만 작동한다.)

Icon generators

Launcher icons
Action bar and tab icons
Notification icons
Navigation drawer indicator
Generic icons
Tab icons (pre-Android 3.0)
Menu icons (pre-Android 3.0)

Other generators

Device frame generator (or see the official version for Nexus devices)
Simple nine-patch generator

Community tools

Android Action Bar Style Generator by Jeff Gilfelt
Android Holo Colors Generator by Jérôme Van Der Linden