728x90

Android (안드로이드) 88

[Android] FCM (1) - FCM 이란? / FCM 사용법 / 테스트 메시지 수신

안드로이드에서 흔히 Push 알림이라 불리는 FCM에 대해 알아보고 사용해보자.   참고로, 2024년 6월 20일부로 기존 HTTP 방식의 Cloud Messaging API는 더 이상 사용할 수 없다.그렇기에 이 포스팅에서는 변경된 HTTP v1 방식을 다룰 것이다.    FCM 이란?    Firebase Cloud Messaging 의 약자이며, 공식 문서에서는 다음과 같이 정의한다. '메시지를 안정적으로 무료 전송할 수 있는 크로스 플랫폼 메시징 솔루션' 정의에서 알 수 있듯이, 주요 기능은 메시지를 전송하는 역할이다.또한, 크로스 플랫폼을 지원하기에 안드로이드, ios, 웹에서 모두 이용할 수 있다.     FCM 동작 과정  FCM 구현에는 송수신을 위한 2가지 기본 요소가 갖춰져 있어야 한..

[Android] Notification (3) - Group Notification / Notification 그룹화

지난 포스팅과 이어지는 3번째 Notification 포스팅이다. Notification 그룹화에 대해 알아보자.    Group Notification ?  Android 7 (API LEVEL 24) 부터 지원되며동일한 그룹 식별자를 가진 알림을 하나의 그룹으로 묶어서 드롭다운 형식으로 제공한다.   위 사진을 보면 한 번에 이해가 될 것이다.  우리가 지난 포스팅까지 사용해봤던 방법은 다음과 같은 알림이었다.   동일한 Notification ID를 가진 알림은 여러 번 발생하더라도여러 개가 쌓이지 않고 하나의 알림이 계속 업데이트 되는 방식이다.  그리고, 각기 다른 Notification ID를 가진 알림은 다음과 같이 여러 개의 알림이 쌓인다.   하지만 위와 같은 알림은 알림 드로어 뿐만 아..

[Android] Notification (2) - 알림 클릭 이벤트 / PendingIntent / Notification Channel · Notification ID 식별 테스트

지난 포스팅과 이어지는 Notification 관련 포스팅이다. 알림드로어의 알림을 클릭했을 때의 동작을 구현해보고,Notification Channel과 Notification ID를 변경해가며 알림 드로어를 살펴본다.      알림 클릭 이벤트 - PendingIntent  PendingIntent는 자신의 앱에서 지정한 권한과 행동을 다른 앱에 부여하는 Intent이다.즉, Intent를 당장 수행하지 않고, 특정 시점에 수행할 수 있도록 해주는 Class이다. 여기서 말하는 '특정 시점'이란 앱이 구동되지 않고 있을 때가 포함될 수 있기에,Notification으로 Intent를 실행한다면 PendingIntent를 필수적으로 사용해야 한다.  대표적으로 카카오톡 알림을 클릭하여 채팅방으로 진입하..

[Android] Notification (1) - 알림 / 알림 사용해보기

안드로이드에서 알림 기능을 사용할 수 있는Notification 클래스에 대해 알아보자.    Notificaiton  안드로이드에서 Notification은(이하 알림) 다양한 위치와 형식으로 사용자에게 표시된다.간단하게 미리 만들어둔 테스트 앱으로 확인해보자.   ● 상태 표시줄에는 아이콘으로 표시된다.      ● 앱 아이콘에는 뱃지가 표시된다.      ● 메인 알림은 알림 드로어에 표시된다.      ● 물론 팝업 형태로 확인할 수도 있다.      ● 알림드로어의 알림 기본 구조는 다음과 같다.   ① Small icon알림을 표시하는 작은 아이콘으로, 필수 요소이다.setSmallIcon() 함수로 세팅할 수 있다. ② App name앱 이름이 표시되는 텍스트다.안드로이드 기본 시스템에서 제..

[Android] 안드로이드 기기 고유 값 얻기 / 기기 식별자 / SSAID

사내 프로젝트 진행 중 FCM 서비스를 사용하게 되었다. FCM 토큰은 보통, 한 번 발급받으면 변경되지 않는다.하지만 앱을 삭제 후 재설치하게 되면 토큰 값이 변경된다. 서버팀에서는 더 이상 사용되지 않는 FCM 토큰 정보를 수시로 폐기하는 등동일한 기기를 사용하는 사용자 관리를 목적으로 기기의 고유한 식별자를 필요로했다.  그리하여 FCM 토큰을 서버로 전송할 때, 해당 기기의 고유 값을 식별자로서 함께 전송하여2가지 값을 관리하는 방식이 채택되었다.  이번 포스팅에서는 안드로이드 기기의 고유 값을 얻어오는 방법을 간단히 정리한다.     기기 고유 식별자 종류와 선택  안드로이드에서는 정말 다양한 종류의 기기 고유 식별자가 존재한다.하지만 정작 사용할 만한 건 몇 개 없다.. 종류에 대해 간단히 알..

[Android] AES (2) - Android 환경에서 AES 사용하기

지난 포스팅에서는 AES에 대해 알아보고,복호화 · 암호화 작업을 웹 사이트에서 간단히 다뤄보았다.  [Android] AES (1) - AES란? / 암호화 / 복호화 사용해보기이번 포스팅에서는 AES 암호화에 대해 알아본다.    AES 란?   ✅ Advanced Encryption Standard의 약자로직역하면 고급 암호화 표준이다.   ✅ 높은 안정성과 빠른 속도를 자랑하기에 현재 대중적으oscarstory.tistory.com    이번에는 안드로이드 환경(Java · Kotlin)에서 진행해보자.    Android 환경에서의 AES  Java에서는 java.security, javax.crypto 패키지에서 AES를 지원하기에해당 클래스를 참조해주면 쉽게 사용할 수 있다. 물론 Kotli..

[Android] AES (1) - AES란? / 암호화 / 복호화 사용해보기

이번 포스팅에서는 AES 암호화에 대해 알아본다.    AES 란?   ✅ Advanced Encryption Standard의 약자로직역하면 고급 암호화 표준이다.   ✅ 높은 안정성과 빠른 속도를 자랑하기에 현재 대중적으로가장 많이 사용되는 암호화 알고리즘이라 할 수 있다.   ✅ AES는 대칭키를 사용하는 대표적인 방식으로암호화 · 복호화 작업에 동일한 키를 사용한다. 이는 비대칭키를 사용하는 방식보다 속도가 빠르다는 장점이 있지만,키가 1개이기 때문에, 탈취당할 시 기밀성을 유지하지 못한다는 단점도 있다.     AES 요소   ✅ Secret Key 암호화 키는 128, 192, 256 세 가지로 사용할 수 있고,각 숫자는 bit 수를 의미하며 곧 키의 길이이다.그리고 각 키는 AES-128, ..

[Android] 안드로이드 스튜디오 Progress Bar (로딩 바) 플러그인 설치! / 포켓몬 Progress Bar

간만에 쉬어가는 포스팅 할 겸,지루할 수 있는 개발 환경을 소소하게 꾸며보는 시간을 가진다.  안드로이드 스튜디오를 실행했을 때, 프로젝트를 빌드할 때 등스튜디오 자체적인 로딩 타임에 표시되는 우측 하단의 Progress Bar를 변경할 것이다.      ✅ 좌측 상단 [File] 탭 → [Settings...] 로 이동한다.      ✅ 좌측 [Plugins] → [Marketplace] 로 이동한다.      ✅ 검색창에 'progress bar' 를 검색한다.   여기서 원하는 종류의 Progress Bar를 입맛대로 골라주면 된다.마리오, 스타워즈, 요시 등 정말 귀여운 녀석들이 다양하다...!     ✅ 선택한 녀석을 [Install] → [Apply] → [OK] 눌러준다.  포켓몬은 못 참는..

728x90