포스팅 환경 M1 Mac OS Monterey 12.6 Android Studio Dolphin 2021.3.1 Patch1 (ARM) 개요 안드로이드 개발을 하다보면 프로젝트에 추가한 의존성들의 버전을 맞추거나 업그레이드 해야할 때 상당부분 귀찮을때가 있습니다. 어떤 것은 안드로이드 개발자 공식사이트에서 알려주는 버전보다 더 높은 버전을 써야 한다던가 혹은 공홈의 버전과 실제 배포로 나와져 있는 버전이 맞지 않다거나 하는 것 처럼 말이죠… 이럴 때는 일일 그 라이브러리 저장소를 찾아가서 버전을 확인한다던가 깃헙을 뒤져서 확인한다 던가 해야합니다. 여간 귀찮은 일이 아닐 수 없습니다ㅋㅋ 하지만 이런 귀찮은 일을 해결해 줄 수 있는 플러그인이 있어서 소개해드리려고 합니다. 기본 최신버전 확인방법 안드로이드..
Develop
포스팅 환경 M1 Mac OS Monterey 12.6 Android Studio Dolphin 2021.3.1 Patch1 (ARM) Gradle 7.4 Flutter 3.3.4 Dart 2.18.2 flutter doctor 가장 자주 쓰는 명령어가 아닐까 싶어요 현재 flutter sdk 를 사용하기 위해서 어떤 추가적인 세팅이 남았는지 flutter doctor 가 확인해줍니다. flutter --version flutter doctor 명령어가 아니더라도 간단하게 flutter SDK 의 버전만 확인하고 싶을 경우도 있습니다. 이 명령어로 dart 버전까지 확인할 때 사용할 수 있어요 flutter upgrade flutter 의 버전을 업그레이드 할 수 있습니다. 저는 flutter 3.0 이..
포스팅 환경 M1 Mac OS Monterey 12.6 Android Studio Dolphin 2021.3.1 Patch1 (ARM) Gradle 7.4 Android Build Gradle 7.3.1 Kolin 1.7.20 Target SDK 32 보통 안드로이드 디바이스 화면을 깨우는 기능이 필요한 일이 흔하지 않은데 저는 FCM 을 구현하던 중에 푸쉬를 받았을 때 화면이 켜져야 할 코드가 필요했습니다. 여러 코드가 있지만 저는 아래 코드를 사용하였는데요 이 코드를 알려드리겠습니다. 안드로이드 디바이스 화면을 깨우는 코드는 생각보다 간단합니다. 바로 아래의 코드인데요 fun wakeUpScreen() { val pm = getSystemService(POWER_SERVICE) as? PowerMan..
포스팅 환경 M1 Mac OS Monterey 12.5.1 Android Studio Chipmunk 2021.2.1 Patch1 (ARM) Gradle 7.2 Android Build Gradle 7.1.2 Kolin 1.7.0 원인 TargetSdk 32 기준으로 FCM 붙이다가 아래와 같은 에러를 만났습니다. E/AndroidRuntime: FATAL EXCEPTION: Firebase-Messaging-Intent-Handle Process: kr.co.softopia.push_example, PID: 19579 java.lang.IllegalArgumentException: kr.co.softopia.push_example: Targeting S+ (version 31 and above) req..
환경 M1 Mac OS Monterey 12.5.1 Android Studio Chipmunk 2021.2.1 Patch1 (ARM) Gradle 7.2 Android Build Gradle 7.1.2 Kolin 1.7.0 개요 안드로이드 개발을 하다보면 가끔씩 assets 폴더 내부에 존재하는 파일을 가져와야 할때가 있는데 자주있는 일이 아니라서 어떤 함수들로 가져왔었지? 하고 항상 다시 찾아보곤 합니다. (ㅜ.ㅜ) 그래서 기록 겸 assets 폴더 내부의 파일을 접근해서 가져오는 방법을 포스팅하려고 합니다. 테스트용으로 아래와 같은 파일이 assets 폴더 내에 존재한다고 가정해보겠습니다. Context.getAssets() 함수로 파일 가져오기 Context 에서는 getAssets() 라는 함수를..
환경 M1 Mac OS Monterey 12.5.1 Android Studio Chipmunk 2021.2.1 Patch1 (ARM) 개요 안드로이드 스튜디오에서 새 프로젝트를 만들고 나면 항상 Asset 폴더를 어디에 만들어야 할지 헷갈려요.. (나만 그런가ㅋㅋ) 그래서 Asset 폴더를 프로젝트 내에서 어떤 폴더 경로에서 생성해야 하는지 포스팅하려 합니다. Asset 폴더 만들기 안드로이드 스튜디오 왼쪽 폴더 탭의 app 모듈 탭에 오른쪽 클릭을 합니다. New -> Directory 순으로 이동합니다. 아래와 같은 창이 나타나면 assets 라고 입력합니다. 만들고 싶은 폴더 경로의 assets 를 더블 클릭합니다. 저는 src/main/assets 에 만들려고 합니다. 아래 처럼 assets 폴더..
개요 앱을 구글플레이 콘솔에 배포 후 구글에서 보통 마켓 키를 생성하라고 권장하는데 나중에 보면 업로드 키와 이 마켓 키 정보가 달라 꽤나 해멧던 적이 있습니다. (그때는 당연 업로드 키와 마켓 키 정보가 같게 생성 될 줄 알았음..) 업로드 할 때는 업로드 키로 사인된 apk 이지만 구글 플레이에서 배포가 되어서 사용자가 다운로드 받을 때는 이 마켓 키로 서명된 앱을 다운 받게 되는데요 따라서 앱에 연동된 외부 서드파티 기능들이 정상적으로 작동하려면 (네이버로그인, 페이스북로그인, 카카오로그인 등등...) 외부 API 에 마켓 키의 정보로 등록을 하여야 합니다. 이 마켓 키를 구글플레이 콘솔에서 확인하는 방법을 알려드리겠습니다. 마켓 키 확인 먼저 구글 플레이 콘솔에 접속해주세요 이후 모든 앱 -> 확..
테스트 환경 M1 Mac OS Monterey 12.5 Android Studio Chipmunk 2021.2.1 Patch1 (ARM) 개요 파일 관련하여 앱별 저장소에 테스트를 하던 중 Android Studio Device File Explorer 에서 저장이 잘 되었는지 확인하려고 했는데 /storage/emulated/: permission denied 라는 메시지가 노출 되면서 볼 수 가 없습니다. 이를 해결하는 방법을 소개하려고 합니다. 해결 먼저 Android Scope Storage 에 따라서 Context.getFilesDir() 로 경로를 가져와서 파일을 저장하면 앱별저장소 - 내부저장소에 저장됩니다. 하지만 런타임에서 코드로 파일의 실존여부를 확인하는 것은 가능하지만 Android ..
테스트 환경 M1 Mac OS Monterey 12.5.1 Android Studio Chipmunk 2021.2.1 Patch1 (ARM) Gradle 7.2 Android Build Gradle 7.1.2 Kolin 1.7.0 개요 Android 에서 File 관련 작업을 오랜만에 하던 중에 궁금한 것이 생겼습니다. 바로 File API 에서 자주 쓰이는 mkdir(), mkdirs() 두 함수의 대한 것이었는데요. 사용할때 마다 "이게 뭐지?" 라고 구글링 후 "아 이거구나" 하고 쓴 뒤에 기록을 하지않아서 늘 새로찾아보는데요 ㅠㅠ 그래서 기록겸 두 함수에 대해서 설명하려고 합니다. File.mkdir() 먼저 mkdir() 함수는 make directory 의 약어로 File 객체가 현재 가지고 ..
환경 - M1 Mac OS Monterey 12.4 - Android Studio Chipmunk 2021.2.1 Patch1 (ARM) - Gradle 7.2 - Android Build Gradle 7.1.2 - Kolin 1.7.0 에러 android compose 를 gradle 에 설정 하던 도중 아래와 같은 오류를 만나게 되었습니다. e: androidx.compose.compiler.plugins.kotlin.IncompatibleComposeRuntimeVersionException: The Compose Compiler requires the Compose Runtime to be on the class path, but none could be found. The compose comp..