본문 바로가기

모바일(Mobile)/안드로이드(Android)

(13)
[TIPS] 안드로이드 컴포즈(Compose) 환경에서 local.properties 파일로 key 값 관리하기 with KTS https://developer.android.com/studio/build/migrate-to-kts?hl=ko Groovy에서 KTS로 빌드 구성 이전 | Android 개발자 | Android Developers Gradle 구성 파일을 Groovy에서 KTS로 이전합니다. developer.android.com 구글에서 위와 같이 기존 groovy(build.grale)에서 KTS로 빌드 구성을 이전했습니다. 2023년 8월 프로젝트를 처음 시작했기에, 자동으로 KTS로 빌드 파일이 구성되었는데, 이때는 몰랐습니다... 이로 인해 의존성 추가 하나 하는 것도 더 찾아보게 되었다는 것을..ㄷㄷ 안드로이드 앱 개발 시, 민감한 데이터의 경우 GitHub와 같은 원격 레포지토리에 올라가지 않게 관리할 ..
[Android] 안드로이드와 컴포넌트 (안드로이드를 구성하는 원소들) 안드로이드와 컴포넌트 안드로이드 앱 개발의 핵심은 컴포넌트입니다. 안드로이드에서 동작하는 프로그램을 보통 APP 또는 어플리케이션이라고 칭합니다. 이러한 안드로이드 앱은 컴포넌트로 구성되어 있는데, 안드로이드 앱은 다음의 4가지 컴포넌트로 구성되어 있습니다. 1. 액티비티(Activity) 안드로이드의 화면 표시(뷰 바인딩 등)를 전적으로 담당하는 컴포넌트입니다. 앱 화면을 리소스 파일과 바인딩하여 사용자에게 상호작용 가능한 인터페이스를 구성하는 역할을 합니다. 액티비티 컴포넌트는 안드로이드 시스템에서 자동으로 생명주기를 관리해 줍니다. 따라서 개발자는 별도로 생명주기를 관리하지 않아도 안드로이드 시스템에서 기본적으로 생명주기를 관리해줍니다. 2. 서비스(Service) 화면이 없는 것이 가장 큰 특징인..
[Android] 안드로이드란?, 안드로이드와 컴파일 (feat. DEX) 안드로이드란? 안드로이드(Android)는 리눅스 커널을 기반으로 구글에서 만든 모바일 운영체제(OS)입니다. 2008년 안드로이드 1.0을 첫 출시한 이후, 현 시점 모바일 OS에서 IOS와 경쟁하고 있는 OS입니다. 안드로이드의 특징 공개 운영체제인 리눅스를 기반으로 합니다. 또한, 안드로이드의 운영채제의 주요부분과 라이브러리 구글이 만든 앱 등의 코드는 대부분 공개되어 있습니다. IOS와는 다르게 안드로이드 OS는 다양한 디바이스를 타겟으로 합니다. 따라서, 안드로이드 개발자는 다양한 안드로이드 디바이스에 대한 대응을 고려해야 합니다. 안드로이드 플랫폼에서는 모든 응용 프로그램이 평등하다는 사상을 바탕으로, 모바일 디바이스에 설치된 앱과 개발자가 만든 앱은 동일한 API를 사용합니다. 안드로이드 운..
[ANDROID] 안드로이드의 네트워크 통신 (HTTP 통신, Volley) Volley란? 구글에서 개발한 안드로이드의 네트워크 프로그래밍용 라이브러리입니다. 안드로이드는 기본적으로 컴퓨터와 달리 네트워크 사용 시 권한 설정이 필요하고, HTTP 통신을 할 경우에는 허용할 도메인 또는 IP 주소가 담긴 설정파일 (xml) 등을 통해 제한적으로 허용할 수 있습니다. 또는 AndroidManifest.xml 파일의 application 태그에 직접 설정을 추가하여 모든 도메인과 통신을 허용할 수 있습니다. HTTP 요청의 메서드 GET, POST, PUT, DELETE 모두 사용 가능합니다. JavaScript의 fetch() 메서드와 비슷한 느낌입니다. REST API로부터 데이터를 받아 뷰(View)에 표시하는 작업 등을 할 수 있습니다. 테스트용으로 사용하기 편한 REST A..
[ANDROID] 휴대전화의 여러 정보를 얻는 방법 (Android PhoneStateListener, TelephonyCallback) phoneStateListener, TelephonyCallback 이란? 스마트폰에서 네트워크 상태를 감지하는 리스너, 콜백 함수입니다. phoneStateListener는 안드로이드 API 버전 12 이후로부터 deprecated 되었습니다. 이유를 찾아보려 했으나 잘 모르겠습니다... 혹시 찾으면 추가할 예정입니다... 그래도 API 12 레벨 이전 앱을 개발한다면 PhoneStateListener 도 사용해야할 수 도 있습니다. PhoneStateListener PhoneStateListener 를 사용할 때 중요한 클래스는TelephonyManager입니다. 이 클래스의 listen 메서드를 통해서 리스너를 동작시킬 수 있습니다. listen 메서드의 두번째 매개변수를 통해 원하는 휴대전화 정보..