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 System Server (Activity Finish)
Android 2021. 3. 31. 15:34

Task Manager에서 Activity Finish가 일어나면 Activity Manager는 즉각적으로 Task리스트에서 해당 Activity는 사라지게 된다. 비록 onDestory가 일어나지 않는다고 하더라도 이런 변화로 인해서 순간적인 Top Activity의 변화를 정확히 잡아내기 어려운 현상이 생겼다. 해결 방법은 아직 못찾았다. Activity Manager는 System Server내에 위치 하는 서비스이다. 관련해서 자세히 나온 슬라이드는 다음 링크를 확인 하면 된다. www.slideshare.net/opersys/understanding-the-android-system-server 추가적으로 내용을 남기자면 안드로이드 소스내에 Platform_frameworks_Base > Se..

Android TV Application 최초 설정
Android 2020. 10. 8. 14:36

Android TV APP으로 정의 Manifest.xml android.intent.category.LEANBACK_LAUNCHER" 정의 해야함 앱 아이콘 등록 기본적으로 Android는 상위와 같은 형태로 App Icon을 표시하는데 TV 용 아이콘은 Banner를 사용한다 이미지 사이즈는 배너는 크기가 320 x 180픽셀인 xhdpi 리소스 로 정의해서 처리 하면 된다. 그런데 216 x 122 픽셀로 해도 문제가 없는거 같다. android:banner = "@drawable/videos_by_google_banner" 안드로이드TV와 일반 안드로이드 단말의 앱이 호환 되는 경우와 안드로이드 TV만 사용하는 앱으로 설정 할 수 있는 방법이 있는데 다음과 같이 feature를 설정해 주면 된다...