본문 바로가기
반응형

Android/기본기능14

[Android] 앱 버전 관리하기 안드로이드용 앱 개발을 하다보면 버전 관리를 해야 한다. 그렇지 않으면 잘못된 버전을 전달할 수도 있고, 이미 수정을 해놓고 문제있는 버전을 전달할 수도 있다. 안드로이드 앱의 버저닝(Versioning)은 시맨틱 버저닝(Semantic Versioning) 방식을 주로 따른다. 1. 기존 버전과 호환되지 않게 큰 기능이 추가 되었으면 MAJOR 버전을 올린다. 2. 기존 버전과 호환되면서 새 기능이 추가 되었으면 MINOR 버전을 올린다. 3. 기존 버전과 호환되면서 버그를 수정한 것이라면 PATCH 버전을 올린다. Android에서는 versionCode와 versionName이 있다. versionCode는 Google Play Store에서 apk 버전의 업데이트를 알리는 용도로 사용한다. 즉, .. 2023. 10. 14.
[Android] LinearLayout을 사용해서 화면을 일정 비율로 3등분하기 Sample app을 만들고 있는데 화면을 3등분 하려고 한다. 정확히 동일한 가중치로 나누지는 않고 중간에 본문은 좀 많이 할당을 하고, 상단과 하단은 조금 적게 할당을 하고 싶었다. 비율로 따지자면 1:3:1 정도? LinearLayout에 weightSum을 사용하면 된다. 나는 LinearLayout 안에 LinearLayout을 추가해서 layout_weight를 사용했다. 전체 LinearLayout에 weightSum = 500을 주고 그 밑으로 layout_weight = 100, 300, 100을 주면 된다. 전체 코드를 보면 결과 화면은 다음과 같다. 2023. 10. 14.
[Android] webView 사용하기 최근들어 실무에서 안드로이드 앱을 사용할 일(샘플앱을 구현해서 feasibility 확인)이 많아져서 차근차근 살펴보고 있는데 드디어 webView가 나왔다. 이런저런 상황에서 언제나 webView로 화면을 띄운다는 등 말들이 나와서 궁금했던 차에 잘 되었다 싶었다. 그냥 activity_main.xml에서 만 설정해 주면 되는 것이었다. 이렇게 간단하다고? 진작에 앱 공부 좀 해놓을 것을 그랬다. 1. activity_main.xml WebView 항목을 추가해준다. 2. MainActivity.java package com.example.webviewexample; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; i.. 2023. 10. 2.
[Android] SharedPreferences를 이용해서 임시 데이터 저장하기 앱을 작성하다보면 굳이 DB까지 사용할 정도로 데이터 양이 많지는 않지만 앱이 종료 되어도 값이 저장이 될 경우가 필요한 시나리오가 있다. (예를 들면, switch를 이용한 값을 변경했을 때 다시 앱을 실행해도 그 값이 그대로 적용이 되어야 하는 경우) EditCtrl을 하나 만들어서 거기에 입력된 값이 앱이 종료 후 재실행 되어도 그대로 저장이 되어 있도록 구현해 보자. UI 상으로는 입력된 값이 EditCtrl에 그대로 남아 있는 것처럼 보이지만 사실은 앱이 종료될 때 SharedPreferences에 저장을 했다가 재실행 될때 그 값을 읽어서 다시 EditCtrl에 뿌려주는 것이다. 1. activity_main.xml에 EditCtrl 생성 2. MainActivity 설정 package com.. 2023. 10. 2.
[Android] ListView 구성하기 안드로이드로 테스트 앱을 만들 때 가장 많이 사용하는 듯. 화면의 리스트를 구성하고 그 리스트를 누르면 테스트할 기능이 실행되는 형태이다. 1. Layout 구성 LinearLayout을 vertical로 설정하고 그 아래에 ListView를 구성했다. 2. MainActivity.java 설정 package com.example.listexample01; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.widget.ArrayAdapter; import android.widget.ListView; import java.util.ArrayList; import java.util.List; pub.. 2023. 10. 1.
[Android] ImageView를 누르면 Toast 메시지 띄우기 간단한 예제이다. 화면에 이미지를 표시하고, 그 이미지를 선택(터치, 클릭)하면 간단한 토스트 메시지를 띄우도록 한다. 1. Layout 구성 이미지의 정렬(gravity 속성)을 사용하기 위해 LinearLayout으로 ImageView를 둘러싸 주었다. 2. 이미지를 누르면 토스트를 띄우는 코드 package com.example.edittext; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.provider.ContactsContract; import android.view.View; import android.widget.Button; import android.widget.EditT.. 2023. 10. 1.
[Android] Intent로 다른 Activity 호출하기 액티비티에서 버튼이나 메뉴를 누르면 다른 액티비티를 호출해서 이동해야 하는 경우가 있다. 안드로이드 앱을 개발하다보면 상당히 자주 사용해야 하는 기법이다. 1. 부모 액티비티의 layout을 입력창과 버튼으로 구성한다. 2. MainActivity.java에 EditText와 Button을 연결해준다. package com.example.intentexample; import androidx.appcompat.app.AppCompatActivity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText;.. 2023. 9. 30.
[Android] AOSP 소스 다운로드 및 Emulator 빌드방법 * AOSP 소스코드 다운로드 받기 1. Manifest의 URL 지정 $ repo init -u https://android.googlesource.com/platform/manifest 2. 마스터 분기 지정 $ repo init -u https://android.googlesource.com/platform/manifest -b android-12.1.0_r27 - android 12 가장 마지막 tag로 받기 ※ AOSP tag 정보 https://source.android.google.cn/docs/setup/about/build-numbers?hl=ko#source-code-tags-and-builds 2023. 7. 12.
[Android] ADB를 윈도우10 환경변수로 등록하기 안드로이드폰을 USB 디버깅으로 연결할 때마다 adb.exe가 위치한 폴더를 실행하고 있는 나를 발견했다. 노트북을 교체하고 환경변수에 등록을 하지 않았는데 해야지 해야지 미루고만 하고 있었다. 맘 먹고 등록하면서 다음에는 빼먹지 않도록 기록해 놓기로 했다. 1. adb.exe의 위치는 android sdk를 설치한 위치에 있다. 예) D:\AndroidSDK\platform-tools\ 2. 환경변수를 등록하기 위해 내 컴퓨터를 열어서 설정으로 들어간다. - 내컴퓨터 -> 속성 -> 고급 시스템 설정 -> 환경변수 - 시스템 변수(S)의 Path를 선택하고 편집을 누른다. - 새로 만들기를 선택해서 SDK의 경로를 platform-tools\까지 포함해서 추가한다. 3. cmd 창을 호출해서 adb v.. 2023. 5. 24.
반응형