기본 콘텐츠로 건너뛰기

안드로이드 앱 만들기 : kotlin 배우기를 위한 공유

원본출처: 티스토리 바로가기 https://vtsen.hashnode.dev/free-android-development-learning-resources-for-beginners   Free Android Development Learning Resources for Beginners Ultimate free resources and courses that I find useful while learning Android development as a beginner vtsen.hashnode.dev   오늘은 아침에 찾은 링크 하나를 공유하는 것으로...   짧은 영어 이기는 해도 배우는 것들이 다 영문 사이트 이므로... 한 번은 읽어봐야 할 것 같아서...   끝.   링크이미지 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

안드로이드 앱 만들기 : GoogleMap (feat Jetpack Compose)

원본출처: 티스토리 바로가기 앱을 만들다 보면 지도가 들어가는 앱을 만들게 되는 경우가 있다. GoogleMap API 등을 이용해서 앱을 만들게 되는 데, 이번에는 Jetpack Compose 기반의 GoogleMap 을 구현해 볼까 한다.   googleMap 들어 있는 앱(개발중...) 아직은 예전 java 코드에서 kotlin 코드로 이전 작업을 하는 중이라 미완성의 모습으로 보이는 데, 일단, 앱에 구글맵을 넣어 보았다.   먼저 gradle 파일에 추가해야 하는 것들은 다음과 같다. // compose Maps implementation 'com.google.android.gms:play-services-maps:18.1.0' implementation "com.google.accompanist:accompanist-permissions:0.26.0-alpha" implementation 'com.google.maps.android:maps-compose:2.5.3' implementation "androidx.compose.foundation:foundation:$compose_version" implementation 'com.google.maps.android:maps-compose-widgets:2.5.3' 버전에 따라서 달라질 수 는 있지만, 오늘 현재는 위와 같이 설정해 주면 된다.    다음은 manifast 파일에 권한 설정을 보겠다.   <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission

안드로이드 앱 만들기 : Android Studio Update Dolphin Beta 5

원본출처: 티스토리 바로가기 about Android Studio 개발 툴에 패치가 있네요... 다른 건 아직이고 testOption에 대한 부분이 설명이 있어서 한번 읽어 볼꼐요..    Gradle Managed Virtual Devices (그래들 관리 가상 머신?) In order to improve consistency, performance, and reliability when using Android Virtual Devices for your automated instrumented tests, we're introducing Gradle Managed Virtual Devices. This feature allows you to configure virtual test devices in your project's Gradle files that the build system uses to fully manage those devices—that is, create, deploy, and tear down—to execute your automated tests.   You can specify a virtual device that you want Gradle to use for testing your app in your module-level build.gradle file. The following code sample creates a Pixel 2 running API level 30 as a Gradle managed device.   자동화된 계측 테스트에 Android 가상 장치를 사용할 때 일관성, 성능 및 안정성을 개선하기 위해 Gradle 관리 가상 장치를 도입합니다. 이 기능을 사용하면 빌드 시스템이 자동화된 테스트를 실행하기 위해 해당 장치를 완전히 관리(즉, 생성, 배포 및 해체)하는 데 사용하는 프로젝트의 Gradle 파일에서 가상 테스트 장치를 구

안드로이드 앱 만들기 : material dialog 만들기 예제

원본출처: 티스토리 바로가기 https://github.com/afollestad/material-dialogs   GitHub - afollestad/material-dialogs: 😍 A beautiful, fluid, and extensible dialogs API for Kotlin & Android. 😍 A beautiful, fluid, and extensible dialogs API for Kotlin & Android. - GitHub - afollestad/material-dialogs: 😍 A beautiful, fluid, and extensible dialogs API for Kotlin & Android. github.com   오늘은 미디움 에서 받은 메일의 내용중에서 기억해 두면 좋을 것 같은 정보 하나를 읽어 보도록 하겠습니다.    앱을 만들다 보면 알림 다이얼로그를 구현해야 하는 경우가 종종 발생합니다. 이런 경우 일반적이라면 AlertDiaglog 을 활용하게 됩니다.  통상적인 다이얼로그는 theme 을 기준으로 해서 화면에 구현이 되고, 사각형 박스 형태로만 운영이 됩니다. 또한 컴스터하게 다이얼로그를 만들려고 할려면 layout  파일을 구성하거나 하는 방법으로 구현을 하기도 했습니다.   jetpack compose 으로 넘어가면서 그 마저도 화면을 일일이 구현하는 방식으로 전환 되어야 했습니다. 이제는 조금은 수월하게 알림을 구현해 볼 수 있을까 ? 도전해 보도록 하겠습니다.   먼저 일반적으로 작성한 코드를 살펴 볼께요.  다음과 같이 builder 을 만들고, 설정을 하고,  선언을 한 다음, 버튼의 색도 필요에 따라서 색을 입혀볼 수 있었습니다.   변경전 화면 val builder = AlertDialog.Builder(this@MainComposeActivity, R.style.Theme_MaterialCo

안드로이드 앱 만들기 : local.properties 의 활용 API 키 숨기기

원본출처: 티스토리 바로가기 https://barros9.medium.com/how-to-keep-your-certificates-and-api-keys-secrets-on-android-ebc5fde4b106   How to keep your certificates and API Keys secrets on Android 🤫 It could happen that pre-lunch report of your app reports a security issue: Your app contains exposed Google Cloud Platform (GCP) API keys barros9.medium.com 원작자의 글 : 위 링크에 있는 원작자의 말은 공개된 소스 창고(git 등)에 소스를 게시하는 경우 극히 개인적이어야 하는 API Key등을 숨기는 방법에 대해서 이야기를 하고 있다.  나야 뭐 git 등에 게시할 만큼의 skill 이 없으니 다행(?)이라고 생각이 들기는 한다.    아무튼 local.properties 의 활용에 대해서 공부를 해 보는 기회가 되기를 바래 본다.     1. API key 등은 local.properties 에 저장하자. dev.googleApiKey="????????????????????????????????????????" prod.googleApiKey="????????????????????????????????????????" 2. 다음은 build.gradle 파일에 저 값을 가져 오도록 설정해 두어야 한다. def localPropertiesFile = rootProject.file('local.properties') def localProperties = new Properties() localProperties.load(new FileInputStream(localPropertiesFile)

안드로이드 앱 만들기 : jetpack compose 최종 버전 오류(?)

원본출처: 티스토리 바로가기 https://stackoverflow.com/questions/72908707/problem-with-updating-compose-version-to-1-3-0-alpha01   Problem with updating compose version to 1.3.0-alpha01 I have an Android Studio project that works fine when I'm using Kotlin version 1.6.21 and compose version 1.2.0-rc01. The problem arises when I want to update both dependencies to the latest versio... stackoverflow.com android studio 가 가이드를 잘해 준다. 그래서 최종 버전이 나오면 변경하라고 알려 주는데, 크~억 이번에는 다른 문제가 있는 건가 빌드를 하다 보니, 오류가 발생했다.    그래서 찾아보니 compiler 의 버전이 아직 패치가 되지 않았나 보다. 그래서 아래처럼 설정을 따로 나누고...   버전설정하기   컴파일러 옵션 설정 implementation 버전 설정 2개를 분리해서 빌드를 해 보았다.  잘 된다... 패치는 가급적 한 번에 해 주면 좋을 텐데... ㅋㅋ 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

안드로이드 앱 만들기 : SafetyNet API 사용이 중지 된다고 ?

원본출처: 티스토리 바로가기 https://developer.android.com/training/safetynet/deprecation-timeline Discontinuing the SafetyNet Attestation API  |  Android Developers The SafetyNet Attestation API is deprecated and has been replaced by the Play Integrity API. Learn more. Discontinuing the SafetyNet Attestation API In order to help you safely grow your business, Google builds tools to protect your Android apps and games developer.android.com firebase 을 활용한 앱을 만들다 보면 앱의 보안성을 위해서 safetynet api 를 활용해서 앱을 인증하게 된다. 다만, 이번에 앱을 릴리즈 하는 과정에서 경고가 뜨기 시작했다.  기한은 최대 2024년 6월 까지 이지만, 권고된 기한인 2023년 6월 이전에는 API을 이전 해야 하는 것이다. Play Integrity API를 사용하도록 앱 설정 해야 하는 데, 그에 대한 정보는 위 링크에서 찾아 보도록 해야겠다. 구글이 나날이 권고 사항을 늘리고 있는 것 같기도 하지만, 그게 구글의 정책 이기도 하겠지만, 결국은 사용자를 보호 하기 위한 정책 이기도 하겠다. 난 언제 수정된 버전을 릴리즈 해야 하는 가 ? 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.