본문 바로가기

Android7

DeepLink 12/31 DeepLink딥링크는 사용자를 모바일 앱 내의 특정 페이지나, 원하는 페이지로 직접 이동 시키는 기술이다. 특정 링크를 클릭했을 때나, 링크를 클릭하지 않았더라도 뭔가의 앱으로 이동하는 듯한 기능을 일상생활에서도 충분히 느껴본 적 있을 것이다.예를 들어보자면, 인터넷을 돌아다니다 보면 흔하게 납치(?) 당하는 쿠팡이라던가, 많은 기능들로 바로 유도되는 토스라던가.. 일련의 동작으로 앱만 켜지는 것이 아닌, 특정한 상품 링크 혹은 기능으로 바로 이동되는 것을 자주 겪었을 것인데, 그게 바로 이 DeepLink 라고 할 수 있다.현재 프로젝트 내의 기능으로도 넣어야 한다는 Tencent 측의 요청이 있어 작업을 시작했었고, 현재는 마무리했다.구현 방법에 대해 일일히 설명하는 것도 나쁘진 않지만.. 2026. 1. 10.
Intent / Activity / Service 12/15 안드로이드에서 인텐트는, 앱의 구성 요소(Activity, Service 등) 간에 작업을 요청하고 데이터를 주고받기 위해 사용하는 메시지 객체이다.이를 알아보기 위해서, 먼저 각 구성요소가 뭔지 알아보자 Activity액티비티는 사용자와 상호작용하는 '하나의 화면' 을 의미하는 핵심 구성 요소.대부분의 앱은 최소 하나 이상의 액티비티를 가지며, 앱을 실행했을 때 처음 보이는 화면이 메인 액티비티. 이메일 앱을 예로 들면, 받은 편지함 목록, 메일 쓰기, 메일 읽기 화면이 각각 별개의 액티비티로 구현될 수 있다.구현시에는 setContentView() 를 통해 XML 레이아웃 파일을 연결하여, 사용자에게 버튼, 텍스트 등의 UI 를 보여준다.액티비티는 LifeCycle 을 가지는데, 시스템에.. 2025. 12. 28.
SHA-256 서명 12/19 해시 함수는 수많은 시스템에서 보안과 데이터 무결성을 지 키기 위해 쓰이는 중요한 기술이다. 그 중, SHA-256 은 가장 널리 사용되는 해시 알고리즘 중 하나로... 단방향 알고리즘이라고도 한다. 더 발전된 다른 기술로는 양방향 알고리즘으로, AES-256 이라는 것도 있는 것 같은데.. 그건 다음 기회에 SHA-256SHA-256 은 Secure Hash Algorithm 256-bit 의 약자로, 입력값을 256비트(32바이트) 길이의 해시값으로 바꿔주는 함수이다.작동 원리는,입력값을 byte 로 변환하고(UTF-8 인코딩 등) >> 512bit 단위로 쪼개고, 부족한 부분은 0으로 패딩한 다음 >> 64번의 round 를 거쳐 내부 상태를 섞고 >> 최종적으로 256bit 의 해시값을.. 2025. 12. 24.
.jar / .aar 12/11 .jar 과 .aar 은 둘 다 Java 및 Android 플랫폼에서 코드를 패키징하고 배포하는 데 사용되는 아카이브 파일 형식이다. 그럼 둘이 뭐가 다른건가.. 하면 포함할 수 있는 콘텐츠 유형과 사용되는 환경이 다른데,.jarjar 은 Java ARchive 의 약자로, 자바 애플리케이션 및 라이브러리 배포를 위해 사용한다. 내부에는 컴파일된 Java 클래스(.class), 메타데이터, 리소스 파일 등 순수 자바 관련 파일만 존재하며, 모든 자바 플랫폼에서 사용할 수 있다.JAR 파일은 여러 Java 클래스 파일과 관련 리소스를 단일 압축 파일로 묶어 효율적인 배포를 가능하게 하는 표준 Java 패키지 형식. 순수 자바 코드로만 구성된 유틸리티 라이브러리 등에서 주로 사용된다. .aara.. 2025. 12. 12.
AndroidManifest 12/10 오늘도 SDK 연결을 위한 기반 작업 이라고 쓰고 시행착오 를 잔뜩 했다. 이번달 안에 전달해야 한다고 해서 열심히 할 수 밖에 없음.. 그 중 오늘 세팅했던 AndroidManifest 를 알아보자. AndroidManifest사실 xml 파일로만 사용되고 있어서, .xml 을 붙여서 말해도 같은 것을 뜻한다. 아무튼 모든 안드로이드 애플리케이션 프로젝트의 루트 디렉터리에 위치해야 하는 필수 구성 파일.뭐하는 파일이길래 필수인가 하면, 안드로이드 시스템, 빌드 도구 및 Google Play 스토어에 앱에 대한 필수 정보를 설명하는 역할을 한다. 주요 목적앱 식별앱의 고유한 패키지 이름, 버전 코드, 버전 이름 등 메타데이터를 정의한다.컴포넌트 선언앱을 구성하는 핵심 컨포넌트인, 액티비티 /.. 2025. 12. 11.
APK 서명 체계 v3 12/09 음... 사실 이건 쓸까 말까 좀 고민했는데, 실제 찾아본 자료가 공식문서라 사양서에 가까워서... 개념만 정리하고 실제로는 그걸 보면서 하는게 맞지 않나..? 싶은뭐 주요 특징정도만 간단하게 정리해놓고 넘어가야겠다. APK 서명v3 라는 것은 버전3 이라는 것이기 때문에.. 먼저 앱 서명이 뭔지부터 알아야 한다.안드로이드 플랫폼에서 실행되는 모든 앱은 개발자가 서명해야 하며, 서명되지 않은 앱은 설치할 수 없다.(혹은 위험을 감수하거나) 따라서 서명을 통해 앱 작성자를 식별하고 안전하게 업데이트 할 수 있다. 앱 서명의 목적과 특징은,보안과 책임 소재앱이 수정되지 않고 사용자 기기에 배포되도록 보장하며, 앱 동작의 책임을 개발자에게 있도록 한다.애플리케이션 샌드박스서명된 인증서는 각 앱에 고.. 2025. 12. 10.