어플리케이션, 앱 (Application) 25

안드로이드 jetpack compose 공부 정리 3일차 (코틀린, 함수와 클래스)

함수와 클래스 3일차는 함수와 클래스에 대한 내용이다.1. 함수 (Function) 함수는 특정 작업을 수행하는 코드 블록이다.fun 키워드를 사용하여 정의한다.함수명, 변수명 규칙이 동일하다. (camelCase 권장).main() 함수는 프로그램의 시작점이다.1.1. 함수 정의fun 함수이름(파라미터1: 타입, 파라미터2: 타입, ...): 반환타입 { // 함수 내용 return 반환값 // 반환타입이 있을 시}// 반환값이 없으면 (Unit) 반환 타입 생략 가능fun printMessage(message: String) { // : Unit이 원래 있지만 생략 println(message)}1.2. 함수 호출함수이름(인자1, 인자2, ...)1.3. 함수 예제fun greet(n..

단일 모델 기준 코드 작성 성능에 대한 비교

대학교에서 사용자 맞춤형 동화 생성 및 낭독 서비스를 개발하면서 여러 생성형 모델을 써본 경험을 간단히 써보고자 한다.생성형 모델의 원조격이라 할 수 있는 gpt, 그중에서도 o4-mini-high와 o3를 많이 쓰고 프로젝트 형식으로도 많이 써봤는데 일단 프로젝트 지식에 넣을 수 있는 파일이 20개 밖에 안 되는 것도 아쉽고 코드 작성도 매번 같은 기능을 다르게 작성하는 탓에 프로젝트에 제대로 써먹기 어려웠다. 작정하고 프롬프팅 하면 뭐 달라질 것 같긴 한데 기본적으로 코드를 정확하게 작성을 안 해줘서 계속해서 쓰기에는 영 부족한 점이 많다.그리고 무슨 명령을 내려도 UI/UX는 진짜 멍멍이 판이다 그냥 사람이 하는 게 더 빠르고 더 낫다. 그래도 성능 자체는 부족한 게 아니라 UI/UX를 신경 쓰지 ..

애드몹 GDPR 메시지 적용 준비

EU 지역에 앱을 출시하고 광고를 띄울려면 개인정보 수집 선택, 알림을 위한 GDPR 메시지를 만들어야한다.구글 애드몹의 메뉴에서 개인 정보 보호 및 메시지 페이지에 가면 아래와 같은 안내가 나온다. 유럽 규정 메시지 만들기를 클릭하면 아래와 같은 화면에서 여러가지 설정을 할 수 있다. 먼저 앱을 연결한다.그리고 동의하지 않음은 웬만하면 사용 안함으로 설정하고 닫기도 사용 안함으로 설정한다.동의, 옵션 관리, 광고 파트너 화면을 자신이 원하는대로 수정하면 되는데 여기서 여러 경험자들의 의견을 바탕으로 몇 가지 유의 사항을 정리하고자한다.1. don't consent 비활성화한다.2. 팝업에서 옵션 값이 sharedpreferences에 저장되므로 전체 동의를 안했으면 광고를 못 띄운다. 전체 동의를 안 ..

안드로이드 앱 생명주기 (Activity Lifecycle)

1. 생명주기(Lifecycle)란?안드로이드에서 Activity는 사용자 인터페이스(UI)를 구성하는 핵심 요소다. 사용자가 앱을 실행하고 다른 앱으로 전환하고 다시 앱으로 돌아오는 등 다양한 상호작용 과정에서 Activity는 여러 상태를 거치게 되는데 이러한 상태 변화를 생명주기(Lifecycle)라고 한다. 각 상태에 따라 Activity는 특정한 콜백(Callback) 메서드를 호출하고 개발자는 이 메서드들을 재정의(override)하여 특정 시점에 필요한 작업을 수행할 수 있다. 예를 들면 Activity가 처음 생성될 때 UI를 초기화하거나, 화면에서 사라질 때 데이터를 저장하는 등의 작업을 할 수 있다.2. 생명주기 콜백 메서드Activity 생명주기는 다음과 같은 주요 콜백 메서드들로 구..

안드로이드 앱 애드몹 광고를 이용한 수익화 방향 (애드몹 리워드 광고 단가)

오늘 광고 노출 수에 비해 단가가 상당히 높은 걸 봐서 보고서를 한 번 찾아봤다. 리워드 광고인데 노출 수 2에 2천원이다오후 12시에 2번 본 건데 내가 알기로는 클릭을 해도 몇 백원이니 아마 광고를 보고 해당 앱까지 다운로드 받은 것 같다. 오류가 아니면 말이다. 시간대를 보니 다운 받은 건 한 번인 것 같은데 이게 말이되는 단가인가 싶다. 참고로 배너 광고는 노출 1당 단가가 0.1~0.3원 사이로 체감된다. 리워드광고는 시청만 할 경우 10원~20원으로 체감된다. 나쁘지 않은 편이다. 근데 2천원은 처음 본다. 앱을 처음 만들 때는 배너광고가 추가하기 편하지만 결국 고수익을 볼려면 리워드형 광고만이 답인 것 같다. 그리고 앱 오프닝 광고는 경험상 거부감만 급상승시키고 앱 삭제로 귀결되는 것 같다 ..

언리얼 엔진에 밀릴 줄 알았던 유니티

한 1,2 년 전 쯤 언리얼 엔진이 엄청 뜨면서 유니티 주가도 내려가고 소식도 부정적인 소식 위주로 들렸던 걸로 기억한다게임 엔진의 기술력 자체가 언리얼 엔진이 훨씬 높다고 했던 것 같다. 근데 뉴스와 커뮤니티에서 유니티 관련 여러 소식이 들리길래 가볍게 찾아봤다. AW 2025 - 디지털 트윈 기반 스마트팩토리 솔루션유나이트 서울 2025의 키노트 및 세션 라인업을 공개유니티 벡터, AI로 광고 성능 최적화 시도2024년 4분기 매출액은 4.42억 달러로 전년 대비 4.2% 증가하며 가이던스 상단을 약 4% 웃돎.조정EBITDA는 1.06억 달러로 가이던스 상단을 약 26% 상회 뭔가 좋은 방향으로 나아가는 것 같긴한데 음 좀 애매한 느낌이다... ai 관련해서 찾아보니 5일 전에 아래의 사이트를 업데..

개발 방식 전면 개편…

각종 AI 툴들과 내 앱의 기능, UI를 보면 확실히 앱 개발 방식에 있어서 변화가 필요할 것 같다. 특히 학기 중에는 짬짬이 개발을 해야하는데 요즘 들어 힘이 딸리는 것 같다.기존에는 기획 > gpt 로 틀 만들기 > AI 친구들과 activity나 fragment 하나씩 채워나가기 정도였는데 다른 사람들의 개발 속도와 퀄리티를 보니 좀 더 변화가 필요할 것 같다. cursor 이 녀석이 제일 고민이다. 전체 파일을 인식하고 그 기반으로 코드를 짜주기에 개발 속도가 매우 빨라지는데 뭔가 android studio 버리고 가기가 영 거부감이 든다. 차라리 android studio에서 빨리 비슷한 기능을 추가했으면 좋겠다 부모격인 intellij도 커서랑 비슷한 길을 가는 것 같으니 말이다…일단 지금은 ..

findViewById()를 버리고 ViewBinding을 쓰자

오늘은 viewbinding에 대해 정리해보고자 한다. 물론 jetpack compose를 메인으로 쓰면 쓸 일은 거의 없지만 하이브리드로 xml을 쓰는 경우도 있으니 간단하게 알아 놓는 것 정도는 괜찮다고 생각한다.View Binding은 안드로이드 개발에서 레이아웃 XML 파일에 정의된 뷰들을 보다 안전하고 간편하게 코드로 참조할 수 있도록 도와주는 기능이다. 기존의 findViewById() 방식보다 코드가 간결해지고, 컴파일 시점에 타입 안정성을 보장받을 수 있어 런타임 에러를 줄이는 데 큰 도움이 된다.1. View Binding의 개념자동 생성된 바인딩 클래스:각 XML 레이아웃 파일마다 해당 레이아웃의 모든 뷰에 대한 참조를 멤버 변수로 포함하는 바인딩 클래스가 자동으로 생성된다. 예를 들어..

안드로이드 jetpack compose 공부 정리 2일차 (코틀린, android 14 이후 버전)

2일차는 코틀린의 기본 문법에 대한 내용이다.1. 변수 (Variables)정의: 프로그램이 실행되는 동안 데이터를 저장하는 데 사용되는 수단.역할: 특정 데이터 종류(숫자, 문자열, 리스트 등)를 저장하기 위한 메모리 공간을 할당받음.값 할당: 데이터를 특정 메모리 위치에 저장하는 것을 의미.소멸: 앱이 종료되면 변수에 할당된 값은 소멸됨.가변성:var: 읽기 및 쓰기 가능 (Mutable). 값이 변경될 수 있는 변수를 선언할 때 사용. 예: var counter = 0; counter = 1 (카운터, 사용자 입력에 따라 업데이트되는 값)val: 읽기 전용 (Immutable). 한 번 값이 할당되면 변경할 수 없는 변수(상수)를 선언할 때 사용. 예: val pi = 3.14 (상수, 변경되지 않..

애드몹을 이용한 수익화 방향

현재 애드몹에서 앱 오프닝 광고, 보상형 광고, 배너 광고를 통해 수익을 보고 있다.각 광고의 특징을 정리해보자면앱 오프닝 광고- 앱이 켜질 때마다 뜨는 전면 광고, 내가 다른 앱을 통해서 느낄 때는 큰 불편함을 안 느꼈는데 다른 사용자들은 거부감이 좀 있는 것 같다. 수익성이 점차 떨어지는 것으로 추정보상형 광고- 광고 버튼을 눌러서 보는 광고. 일반적으로 광고 보는 대가로 보상을 준다. 단가가 제일 높다. 1회 노출당 2~30원, 클릭시 10배 정도 수익을 버는 것 같다. 능동적으로 보는 거라 거부감이 생각보다 적은편. 다만 계속 광고 시청을 유도하도록 로직을 짜는 게 매우 중요하다. 이번에 광고 수익 흐름을 보면서 뼈저리게 느끼고 있다.배너 광고- 가장 운영하기 단순하고 흔한 광고. 단가가 매우 낮..