Tag Archives: Android

Android 앱 빌드 속도를 높이는 10가지 방법

이번 글에서는 Android 앱 빌드 속도를 높일 수 있는 10가지 방법에 대해 알아보려고 합니다. 빌드 속도는 생산성 향상을 위해 매우 중요한 요소입니다. 저는 APK 하나를 생성하는 데에 8분 넘게 걸렸던 적이 있습니다. 각 프로젝트 상황에 따라 더 오래 걸리는 팀도 있을 텐데요. 그게 바로 우리 팀 얘기라면 이번 블로그를 꼭 읽고 제가 소개드리는 방법을 잘 활용하셨으면 좋겠습니다.

Android 앱의 크기를 줄이는 10가지 방법

안녕하세요. LINE Thailand에서 테크놀로지 에반젤리스트를 맡고 있고, Android 개발자로 5년 넘게 일해왔으며, Firebase의 Google Developer Expert이기도 한 Jirawat Karanwittayakarn입니다.
저는 이번 글에서 앱 크기를 줄이는 방법을 공유하려고 합니다.

TRACKIT에서 딥링크를 사용하는 방법

안녕하세요. LINE GAME PLATFORM 개발 팀에서 TRACKIT을 개발하고 있는 이형중입니다. TRACKIT은 2018년 말 오픈한 서비스로 웹에서 애플리케이션에 접근하거나 실행한 사용자를 추적하는 서비스입니다. LINE GAME에 마케팅용 추적 기능이 없어서 TRACKIT을 개발하게 되었는데요. 현재 LINE POP2Jumpti Heroes 등의 게임에 적용하여 서비스하고 있습니다.


이번 글에서는 TRACKIT을 개발하면서 적용한 딥링크(deeplink)의 개념과 종류, 사용 방법에 대해 공유하려고 합니다.


AIR GO에 안드로이드 9 APK 서명 scheme v3 적용하기

안녕하세요. LINE에서 AIR GO를 개발하고 있는 김승훈입니다. AIR GO에 대해선 이전에 ‘AIR GO를 소개합니다‘에서 먼저 말씀드렸는데요. 이번 블로그에서는 그에 이어 APK 서명에 관한 내용과 AIR GO 탐지 정보를 소개하고자 합니다. 최근 Google이 Android 9(Pie)에서 APK Signature Scheme v3을 소개했는데요. 이에 관련된 내용을 AIR GO에 적용하면서 개발자에게 도움이 될 만한 부분을 정리한 글입니다.

Kotlin으로 서버사이드 개발과 Clova Skill Award 도전!

LINE Engineering Blog를 찾아주신 여러분, 안녕하세요? 오늘은 두 명이 공동으로 작성한 포스팅입니다. 저희 소개 먼저 드리겠습니다. LINE에서 게임 플랫폼 개발을 맡고 있는 Kagaya와 동영상 생중계 서비스 LINE LIVE의 Android 앱 개발을 맡고 있는 Akira입니다.

이번 포스팅에서는 아래 두 가지 이야기를 통해 서버사이드 Kotlin에 관한 노하우와 유스케이스를 공유할까 합니다.

  1. Kagaya가 담당하는 LINE GAME 플랫폼의 Kotlin 이용 현황 이야기
  2. ‘LINE 사내 Clova Skill Award’에 저희 둘이 팀으로 참가해서 Kotlin으로 영광의(?) 최우수상을 수상한 이야기

LINE Creators Studio 개발에 사용하는 Kotlin 소개

시작하기 전에

안녕하세요, 저는 LINE Fukuoka 개발 팀에서 일하는 Freddie Wang입니다. 저는 현재 LINE Creators Studio라는 새로운 Android 앱 개발을 맡고 있습니다. LINE Creators Studio는 누구나 자기만의 스티커를 만들 수 있도록 도와주는 스티커 제작 툴입니다. LINE Creators Studio로 만든 스티커는 LINE Store에서 판매도 할 수 있습니다.

이 블로그에서는 LINE Creators Studio 앱 개발에 전적으로 사용하고 있는 프로그래밍 언어인 Kotlin에 대해 이야기해보려 합니다. 왜 Kotlin을 주요 언어로 선택했는지 설명하고 Kotlin의 어떤 기능을 주로 사용하고 있는지 소개하겠습니다.

참고: LINE Creators Studio는 현재 일본에서만 제공되고 있으며 다른 지역에도 곧 배포될 예정입니다.

Kotlin의 장점과 핵심 기능

Google I/O 2017에서 Google은 Android Studio 3.0부터 Kotlin을 공식 지원한다고 발표한 바 있습니다. 2016년 말 LINE Creators Studio 개발 프로젝트를 킥오프했을 당시 저희는 이 프로젝트를 단기간에 MVP(Minimum Viable Product) 프로젝트로 키워야 하는 과제를 안고 있었습니다. Kotlin 1.0이 출시된 지 한참 지난 후였지만 저희 팀에는 Kotlin을 사용해 본 사람이 아무도 없었습니다. 그래서 개발을 시작하기 전에 먼저 Kotlin을 사용하면 어떨지 알아보았는데, 그 결과 아래에서 설명하는 이유 때문에 Kotlin을 사용하기로 결정했습니다.

Kotlin을 선택하게 된 배경

Java와의 100% 호환성

Kotlin의 가장 큰 매력은 Kotlin 코드와 Java 코드를 한 프로젝트에서 함께 쓸 수 있고 기존의 Java 라이브러리를 모두 사용할 수 있다는 것입니다. 우리 프로젝트에는 레거시 Java 코드는 없지만 Dagger 2, Retrofit, RxJava 같은 Java 호환 라이브러리를 사용하고 싶었습니다.

간결한 구문

Kotlin은 문제 해결을 위해 설계된 언어입니다. Kotlin의 주요 목표 중 하나는 깔끔한 코드를 Java보다 쉽게 쓰는 것입니다. 이것이 Android 애플리케이션을 개발할 때 최우선적이고 필수적인 요인입니다.

줄어든 종속성

Kotlin은 Guava처럼 크기가 큰 Java 라이브러리를 대체할 수 있는 컴팩트한 런타임 라이브러리를 가지고 있습니다. 서버나 데스크톱 환경에서는 대용량 라이브러리가 큰 문제가 아니지만 Android에서는 문제를 일으킬 수 있습니다. Android 앱을 개발할 때는 65K 메서드 제한이 있기 때문에 대용량 Java 라이브러리의 사용을 피해야 합니다. Kotlin의 stdlib 라이브러리(버전 1.1.3-2)는 메서드 개수가 6306개라서 메서드 개수에 따른 영향이 Guava 라이브러리보다 적습니다.

이전 버전의 Android 기기 지원

Kotlin 1.0은 Java 6을 기준으로 하기 때문에 버전 2.3 이상인 Android 기기를 지원할 수 있습니다. 이 또한 Android 개발자에게 중요한 요인입니다.