본문 바로가기
728x90

IT/Android10

안드로이드에서 전화 수신 시 통화 받기 및 스피커폰 전환하기 이번 포스팅에서는 Android에서 전화가 올 때, 해당 전화를 수신하고 스피커폰으로 전환하는 예제 소스코드를 소개하겠습니다. 그러나 안드로이드 10 이상부터는 통화를 수신하는 방식이 변경되어 이러한 작업이 어떻게 제한되는지에 대해서도 설명드리겠습니다.1. 전화 수신 시 통화 받기먼저, 전화 수신 시 호출되는 BroadcastReceiver를 구현하여 수신된 전화를 감지하겠습니다. 아래의 코드는 전화가 수신될 때 작업을 수행하기 위한 예제입니다.public class CallReceiver extends BroadcastReceiver { private static final String TAG = "CallReceiver"; @Override public void onReceive(Co.. 2025. 4. 5.
안드로이드 Java에서 PDF 파일 읽기 및 출력하기 이 포스팅에서는 안드로이드에서 Java를 사용하여 PDF 파일을 읽고, 이를 화면에 출력하는 방법에 대해 상세히 설명하겠습니다. PDF 파일은 우리가 자주 접하는 형식이며, 이를 앱에서 어떻게 처리할 수 있는지 살펴보겠습니다.1. 프로젝트 설정하기안드로이드 스튜디오를 사용하여 새 프로젝트를 생성합니다. 여기에서 SDK 버전은 30 (Android 11)로 설정하고, 기본 Activity는 Empty Activity를 선택합니다. 예제를 위해 필요한 라이브러리를 추가해야 합니다. 주의할 점은 PDF 파일을 읽고 표시하려면 외부 라이브러리를 사용해야 한다는 것입니다. 여기서는 'AndroidPdfViewer' 라이브러리를 사용하겠습니다.dependencies { implementation 'com.gi.. 2025. 3. 20.
안드로이드 앱 난독화 및 서명키 생성 방법 소개 안녕하세요. 오늘은 안드로이드 앱을 안전하게 보호하기 위한 난독화 기법과 앱 서명키 생성 방법에 대해 상세히 설명해드리겠습니다. 이러한 방법을 활용하면 앱의 소스코드를 어렵게 하여 리버싱을 방지하고, 안전한 앱 배포에 필수적인 서명키 생성 방법을 익힐 수 있습니다.1. 난독화의 필요성난독화는 소스코드를 읽기 어렵게 만드는 기술입니다. 쉽게 말해 소스 코드가 요리 레시피라고 한다면, 난독화는 이 요리 레시피를 이해 불가한 암호문으로 바꾸는 것과 같습니다. 예를 들어, 아래와 같은 메서드가 있다고 가정해봅시다.public void showMessage() { System.out.println("Hello, World!");}이 메서드는 단순한 기능을 합니다. 하지만 난독화를 하면 아래와 같이 변환될 수.. 2025. 3. 14.
안드로이드 자바에서 특정 UUID로 블루투스 광고하는 방법 이 포스팅에서는 안드로이드 자바를 사용하여 특정 UUID로 블루투스 광고를 수행하는 방법을 알아보겠습니다. 블루투스 광고는 주변 기기에 신호를 브로드캐스트하여 다른 블루투스 장치가 해당 신호를 수신할 수 있도록 합니다. 예를 들어, 퍼스널 디지털 어시스턴트인 스마트 스피커가 자신의 존재를 알리기 위해 블루투스 광고를 사용하는 경우가 있습니다.블루투스 광고란?블루투스 광고는 소형 데이터를 다른 블루투스 장치에 전달하는 수단으로 사용됩니다. 이러한 광고는 광고 패킷을 통해 이루어지며, 광고 패킷 내에는 장치 이름, UUID, 전력 정보와 같은 유용한 정보가 포함됩니다. 이 정보들은 주변 블루투스 장치와의 연결을 쉽게 만들어 줍니다.필요한 권한 추가 먼저, 블루투스 광고를 사용하기 위해 필요한 권한을 Andr.. 2025. 3. 12.
안드로이드 자바 저전력 블루투스(BLE)와 일반 블루투스 연결의 차이점 오늘은 안드로이드 앱 개발에서 저전력 블루투스(BLE, Bluetooth Low Energy)와 일반 블루투스의 주요 차이점에 대해 알아보겠습니다. 두 기술의 차이와 특징을 이해하는 것은 모바일 앱 개발에 중요한 기초가 되기 때문입니다.BLE와 일반 블루투스의 개요블루투스는 한 장치가 다른 장치와 짧은 거리에서 데이터를 전송할 수 있도록 해주는 기술입니다. 그러나 BLE는 이 기술의 세부 개선판으로, 더 적은 전력으로 반복적으로 데이터를 전송할 수 있도록 설계되었습니다. 마치 연필로 끊임없이 짧은 선을 그리는 것과 같다고 비유할 수 있습니다. 일반 블루투스는 기자가 종일 군중 속에서 기사쓰기를 하는 것을 떠올리게 하죠. 전력이 많이 소모되며, 지속적이고 많은 데이터를 전송하는 데 적합합니다.주요 차이점 .. 2025. 3. 10.
안드로이드 자바에서 ArrayList 활용 예제 안드로이드 자바에서 ArrayList 활용 예제안녕하세요! 오늘은 안드로이드 프로그래밍에서 자주 사용되는 ArrayList의 활용 방법에 대해 설명하겠습니다.ArrayList는 자바에서 제공하는 동적 배열로, 편리하게 요소를 추가하거나 삭제할 수 있는 장점을 가지고 있습니다. ArrayList란 무엇인가?ArrayList는 자바의 컬렉션 프레임워크에서 제공하는 클래스 중 하나로, 크기가 가변적인 배열을 제공합니다.이로 인해 사용자들은 정적 배열보다 더 유연하게 데이터 구조를 관리할 수 있습니다.예를 들어, 사용자가 입력하는 데이터의 수가 사전에 예측할 수 없을 때 ArrayList를 사용하면 유용합니다. ArrayList 사용 예제이번에는 간단한 안드로이드 앱을 만들고 ArrayList를 활용하여 사용자.. 2025. 2. 22.
728x90