Android BaseAdapter vs RecyclerAdapter 작동 원리 (RecyclerView 개발)
Android 2022. 2. 12. 23:02

목표 기존 ListView로 만들어져 있던 List를 Recycler View로 만들어 본다. BaseAdapter와 RecyclerAdapter의 작동원리를 알아본다. 하기 링크가 본 포스트의 선행입니다. 2022.02.05 - [Android] - Android ViewModel & ListView 사용하기 (흠... Compose 강좌 만들려고 간단히 기본 강좌 만드는 목적이었는데 이제 Recycler View라니 갈길이 너무 멀군요) Gradle 적용 언제나 그렇듯이 Jebpack을 사용하기 위해서 관련된 라이브러리를 Gradle에 적용을 해야합니다. https://developer.android.com/jetpack/androidx/releases/recyclerview 위의 링크를 참조해서 아..

Android ViewModel & ListView 사용하기
Android 2022. 2. 5. 00:39

목적 ViewModel을 사용해서 fragment 작동 동안 데이터를 유지하고 화면에 표시한다 - ViewModel 사용법을 배운다 - ListView를 통해서 List형 Data를 표현하고 인터렉션 하는 것을 배운다 본 내용은 앞선 포스트에서 연속해서 진행합니다. 2022.01.24 - [Android] - Android Fragment 설정하기 2022.01.24 - [Android] - Android Fragment Navigation with Action 2022.01.25 - [Android] - Android Fragment with Arguments 2022.02.03 - [Android] - Android View Binding (뷰 바인딩) 앞서 뷰바인딩에서 마지막으로 사용되었던 소스를 ..

Android View Binding (뷰 바인딩)
Android 2022. 2. 3. 14:25

목표 View Binding을 적용한다 2022.01.24 - [Android] - Android Fragment 설정하기 2022.01.24 - [Android] - Android Fragment Navigation with Action 2022.01.25 - [Android] - Android Fragment with Arguments 앞서 진행한 posts의 연속입니다. 마지막 포스트에있는 아래 소스 다운받고 보시면 더 편하실거에요. https://github.com/theyoung/fragmentsetup/tree/2de0436018dde923c210601237c121df6909aa4c findViewById의 단점 앞서 만든 TestFragment.kt 파일을 확인해 보자 class TestFr..

Android Fragment with Arguments
Android 2022. 1. 25. 23:21

목표 Navigation을 이용한 Fragment의 이동시 Arguments를 전달한다. 2022.01.24 - [Android] - Android Fragment 설정하기 2022.01.24 - [Android] - Android Fragment Navigation with Action 위의 두개까지 완료 했다면 이제는 어떻게 Fragment사이 Action과 함께 Arguments를 넘길 수 있는지 알아 보고자 한다. build.gradle에 plugin 등록 Arguments의 전달을 위해서는 컴파일시 build 되는 파일이 필요하다. 이를 위해서는 2개의 등록이 필요한데 우선 Top Level build.gradle을 열어보자. // Top-level build file where you can ..

Android Fragment Navigation with Action
Android 2022. 1. 24. 23:38

목표 2022.01.24 - [Android] - Android Fragment 설정하기 위에서 만들어진 Fragment에 Navigation을 이용해서 Activity하나에 3개의 Fragment가 이동하도록 만드는게 목적이다. Navigation할 Fragment 2개 더 만들기 앞서서 설명한 방법에 따라서 Fragment2개를 더 만들어 보겠다. 위와 같이 2개의 Fragment를 만들었다. Navigation이 될 순서는 TestFragment -> SecondFragment -> ThirdFragment 이다. 각 Fragments사이의 이동을 하기전에 kt파일을 onCreateView만 남겨놓고 깨끗히 지워 준다. package com.example.fragmentsetup import and..

Android Fragment 설정하기
Android 2022. 1. 24. 22:33

목표 Layout에 Fragment 설정하기 신규 프로젝트 만들기 Empty Activity를 기반으로 신규 프로젝트를 만들어 준다. API 21기준으로 Minimum SDK를 설정해 준다. https://developer.android.com/jetpack/compose/setup Jetpack이 API21 부터 호환하기 때문에 min SDK는 가급적 21로 맞추어 줄 예정이다. Gradle 설정 확인하기 새로 만들어진 Gradle의 Dependency를 확인하자. build.gradle plugins { id 'com.android.application' id 'kotlin-android' } android { compileSdk 31 defaultConfig { applicationId "com.e..

Android CTS/GTS UnofficialApisUsageTest 비 인터페이스 제한 대응
Android 2021. 8. 24. 22:16

이슈 내용 Android를 이용한 Hidden API 및 Refection을 활용한 Access가 제한되어있는 API를 통한 개발이 Android 9에서 부터 적용되었다. https://developer.android.com/guide/app-compatibility/restrictions-non-sdk-interfaces Android APP을 개발하고 App Store 검증을 받을 때, restriction에 걸리면 릴리즈가 제한된다. Hidden API 확인 방법 그리고 제한되는 API는 점점 많아지고 있다. 위의 URL을 들어가면 확인 가능하다. hiddenapi-flags.csv 예를 들자면 Landroid/view/autofill/AutofillManager;->mServiceClientCle..

Android Device Default Value 변경 (AOSP Setting)
Android 2021. 7. 2. 16:14

AOSP를 이용해서 Android OS 동작에 대한 수정이 필요할 경우 다음과 같이 xml을 수정함으로써 Android Platform의 작동 방식을 변경할 수 있다. 몇 가지 중요해 보이는 내용만 남기고자 한다. 단말의 Hardware 사양 및 시스템 앱의 작동 방식을 결정 (config.xml) https://android.googlesource.com/platform/frameworks/base/+/master/core/res/res/values/config.xml name 내용 config_sf_slowBlur surface flinger에서 blur를 쓸 것인가? (퍼포먼스 이슈) config_useVolumeKeySounds 볼륨키 처리 여부 (키 없으면 불필요) config_activityD..

fastboot 로 device를 찾을 수 없을때 해결방법
Android 2021. 5. 6. 14:34

안드로이드에서 펌웨어 flashing을 하기 위해서 adb root adb shell reboot bootloader 로 android 단말을 재부팅 처리 해도 fastboot devices 로 device가 나오지 않을 때 난감하다. 이경우에는 제어판 > 컴퓨터관리 를 가서 보면 기타장치에 Android 에 노란색 느낌표로 정상 작동하고 있지 않다고 표시가 나올 경우가 있다. 이경우에는 Android Universal Driver를 업데이트 해야한다. developer.android.com/studio/run/win-usb 여기에서 driver를 다운받고 노란색으로 떠있는 안드로이드 driver를 update 처리해 줘야 한다. 여기서 android_winusb.inf를 선택해서 드라이버를 업데이트 해..