๐ ๊ฐ๋ฐ/์๋๋ก์ด๋58 [Android] APK ์ AAB ์ ์ฐจ์ด์ ์ฑ์ ์์ฑํ ํ ์ฌ์ฉ์์๊ฒ ์ ๊ณต(์ฑ ์ถ์)ํ๊ธฐ ์ํด์๋ ํ๋ก์ ํธ์ ์ฌ๋ฌ ํ์ผ์ ํ๋๋ก ๋ฌถ์ด์ ๋ฐฐํฌํด์ผ ํ๋ค. * ๋ฐฐํฌ ํ์ผ ์๋๋ก์ด๋ ์ฑ์ ๋ฐฐํฌ ํ์ผ์ APK ์ AAB ๊ฐ ์๋ค. APK(Android Application Package) : ์๋๋ก์ด๋์ ์ ํต์ ์ธ ๋ฐฐํฌ ํ์ผ๋ก์ ์ปดํ์ผ๋ ์ฝ๋์ ๋ฆฌ์์ค๋ฅผ ๋ฌถ์ด์ ํค๋ก ์๋ช ํ ๊ฒ. AAB(Android App Bundle) : 2018๋ ์ ๊ตฌ๊ธ IO ์์ ๋ฐํํ ์๋ก์ด ์๋๋ก์ด๋ ์ฑ ๋ฐฐํฌ ํ์ผ. Play ์คํ ์ด์ ์ฌ๋ฆฌ๋ฉด ์ฌ์ฉ์ ๊ธฐ๊ธฐ์ ๋ง๊ฒ ์ต์ ํ๋ ํ์ผ์ ๋ง๋ค์ด ์ค๋ค. ์ด๋ ์ฑ์ ๋ด๋ ค๋ฐ๋ ๊ธฐ๊ธฐ์ ๋ง๋ ํ์ผ๋ง ํฌํจํ๋ฏ๋ก ์ฑ์ ํฌ๊ธฐ๊ฐ ์ค์ด๋๋ ํจ๊ณผ๊ฐ ์๋ค. 2022. 12. 9. [์๋๋ก์ด๋] Android ์ง๋/mp3ํ์ผ ๋ฃ๊ธฐ ํด๋น ๊ธ์ 2018๋ 12์ 8์ผ์ ์์ฑ๋์์ต๋๋ค. ๋ฒํผ์ ๋๋ฅด๋ฉด ์ง๋๊ณผ ์ฌ์ด๋๊ฐ ์ธ๋ฆฌ๋ ์๋๋ก์ด๋ ์ดํ๋ฆฌ์ผ์ด์ ์ ๋ง๋ค์ด ๋ณด๊ฒ ๋ค. xml ํ์์ ์ฝ๊ฒ RelativeLayout ์ผ๋ก ๋ง๋ค์. 1. ์ดํ๋ฆฌ์ผ์ด์ ์ ๋ฒํผ ๋ง๋ค๊ธฐ res > layout > activity_main.xml โ 2. Manifest file์ ์ง๋ permission์ ๊ผญ! ์ถ๊ฐํ๋ค. ์์ ์ ์ํ permission์ ํ์ ์๋ค. ๊ถํ์ ๋ฐ์์! ๋ฃ์ด ์ค๋ค. (์๋ manifest file ์ฐธ๊ณ ) โ 3. MainActivity.java package shin.kr.myapplication; import android.content.Context; import android.media.MediaPlayer; import andro.. 2022. 5. 16. [Android] Error while waiting for device: The emulator process for AVD Pixel_4_API_30 has terminated. Error while waiting for device: The emulator process for AVD Pixel_4_API_30 has terminated. ๋ถ์น์ ํ ์๋ฌ ๋ฉ์ธ์ง... ์ ์ข ๋ฃ๊ฐ ๋๋์ง ์ด์ ๋ฅผ ์๋ ค ์ฃผ์ ์ผ ํ ๊ฒ ์๋๊ฐ์. ์๊ฐํ์ง๋ง. ๋ชจ๋ฅผ ๋๋ ์ญ์ ๊ตฌ๊ธ๋ง์ ํ์. ๋ฌธ์ ์์ธ : ๋๋ผ์ด๋ธ ์ฉ๋์ด ๊ฝ ์ฐจ์ ์๊ธด ๋ฌธ์ ์๋ค. ์์ฃผ ํ์ธํ๊ณ ์ฌ์ฉํ์ง ์๋ ์ ๋ฎฌ๋ ์ดํฐ๋ ์ง์ ์ค๋ค๊ณ ํ๋๋ฐ 2๋ ๋์ ์๋ฌ๋ฆฐ ์ปดํจํฐ๋ ๊ทธ ์ธ์๋ ์ฌ๋ฌ ํ์ผ๋ค์ ๋ด๊ณ ์์๋ ๋ณด๋ค. ํด๊ฒฐ ๋ฐฉ๋ฒ : ํด์งํต์ ์๋ ๋ถํ์ํ ํ์ผ์ ์ ๊ฑฐํ๊ณ . ์๋ ๋งํฌ์ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ์ฌ์ฉํ์ง ์๋ ์ ๋ฎฌ๋ ์ดํฐ๋ค๋ ์ง์ ์คฌ๋ค. C:\Users\์ฌ์ฉ์๊ณ์ \.android\avd (๋ด ๊ฒฝ์ฐ๋ ์ด ๊ฒฝ๋ก์ avd ํด๋๊ฐ ์์นํด ์์์) ๊ธํ๋๋ก.. 2022. 3. 3. [Android] INSTALL_PARSE_FAILED_MANIFEST_MALFORMED in Android12 ๊ธฐ์กด ์๋ ํ๋ก์ ํธ๋ฅผ Android12 (API Level 31) ํ๊ฒฝ์์ ํ ์คํธ๋ฅผ ํ๋ ค๊ณ ํ๋ ์๋์ ๊ฐ์ ๋ฉ์ธ์ง๊ฐ ๋ฐ์ํ๋ค. [ Error Message ] Installation did not succeed. The application could not be installed: INSTALL_PARSE_FAILED_MANIFEST_MALFORMED Error: INSTALL_PARSE_FAILED_MANIFEST_MALFORMED Android12 ๋ฅผ ํ๊ฒํ ํ์ฌ ํ ์คํธ ํ ๋ ์ฒดํฌํด์ผ ํ๋ ๊ฒ์ ๋ ๊ฐ์ง๊ฐ ์๋๋ฐ, ํ๋๋ build.gradle (:app) ํ์ธ ๊ทธ๋ฆฌ๊ณ ๋ค๋ฅธ ํ๋๋ AndroidManifest.xml ํ์ธ์ด๋ค. โ build.gradle (:app) ์์๋ compileSdkVer.. 2022. 2. 9. [์๋๋ก์ด๋] ๋ฐํ์์ ๊ถํ ์ฒดํฌํ๋ ๋ฐฉ๋ฒ ๋ ๊ฐ์ง ์ํ ์ฝ๋๊ฐ ์๋ค. Case 1. ํ๋์ ๊ถํ๋ง ์์ฒญํ๋ ์ผ์ด์ค Case 2. ๋ ๊ฐ์ง ์ด์์ ๊ถํ์ ์์ฒญํ๋ ์ผ์ด์ค Case 1. ํ๋์ ๊ถํ๋ง ์์ฒญํ๋ ์ผ์ด์ค ๋์ ์์ Case 1. ํ๋์ ๊ถํ๋ง ์์ฒญํ๋ ์ผ์ด์ค ์ฝ๋ ์ด ๋ถ๋ถ๋ง ์ถ๊ฐํด ์ค ๊ฒ AndroidManifest.xml MainActivity.java package com.devshin93.runtimepermission; import android.Manifest; import android.content.DialogInterface; import android.content.Intent; import android.content.pm.PackageManager; import android.net.Uri; import androi.. 2022. 1. 5. [์๋๋ก์ด๋] ๋จํํ ๋ด ํ๋ก์ ํธ๋ฅผ ๋๊ธธ ๋ ์ด๋ค ํด๋/ํ์ผ์ ์ง์ฐ๊ณ ์ค ๊ฒ์ธ๊ฐ. ์ด๋ป๊ฒ ํด์ผ ์๋๋ก์ด๋ ํ๋ก์ ํธ ํด๋์ ์ฉ๋์ ์ค์ผ ์ ์๋๊ฐ. ์ด์ ๊น์ง ๋ํ์ ์ฌ์๋๋ ์์ง ์ ์ ๋จธ๋ฆฌ๊ฐ ๋์์ค์ง ์์๋ค. ํผ๊ณคํ๋ค... ์ ๋ชฉ์ ๋ญ๋ผ ๋ฌ์์ผ ํ ์ง ๋ชจ๋ฅด๊ฒ ๋ค. SampleProject ์ด๋ผ๋ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค์๋ค๊ณ ๊ฐ์ ํ์. SampleProject ํ๋ก์ ํธ๋ฅผ ๋ง๋ค๋ฉด ์๋์ ๊ฐ์ด ํด๋ ๊ตฌ์ฑ์ด ๋๋๋ฐ, After ๋ก ๋ง๋ค์ด์ ๋ค๋ฅธ ์ฌ๋์๊ฒ ์ ๋ฌํ์~~~ โ After๋ก ๋ง๋ค๊ธฐ ์ํด์๋ ํด๋น ํ๋ก์ ํธ๋ฅผ ์ข ๋ฃํด์ผ ํจ! โ Before ์ํ์์ ์๋ ํด๋/ํ์ผ๋ค์ ์กด์ฌํ๋ค๋ฉด ์ ๊ฑฐ๊ฐ ๊ฐ๋ฅํ ๊ฒ์.. Before ์ํ์์ ์๋๋ฐ? (์๊ฒ) ํ ํ์๋ ์๋ค. ๊ฑ After ์ํ๋ก ๋ง๋ค๋ฉด ๋จ~! SampleProject ใด .gradle : .gradle์ด ํด๋๋ ๋๊ตฌ Gradle์ ๋น๋ ๊ตฌ์ฑ ํด๋, ๋น๋ ์บ์ ์ ๋ณด๊ฐ ์ผ๋ถ ํญ๋ชฉ์ ์ ์ฅํ ๊ฒ์ด๋ค. (์ ๊ฑฐ ๊ฐ๋ฅ) ใด ... 2021. 12. 28. [Android Studio] Run/Debug Configurations no module Android Studio Run/Debug Configurations ์ธ ๊ฒฝ์ฐ, ๋ง์น ๋ชจ์์ Build ์์ Add Configurations... ๊ฐ ์๋๋ฐ, ํด๋ฆญํ๋ฉด Run/Debug Configurations ์ฐฝ์ด ๋ฌ๋ค. ์ด ์ฐฝ ์ผ์ชฝ ์๋จ์์ + ๋ฅผ ๋๋ฌ Android App ์ ์๋ก์ด conf ๋ฅผ ์ถ๊ฐํด ์ฃผ๋ ์ค์ ์ ํ๋ฉด ๋๋ค~ ํ๋ ํด๊ฒฐ ๋ฐฉ๋ฒ์ด ์๋ค. ์ด ๊ฒฝ์ฐ, Module ์ ๋ด๊ฐ ์คํํ ์ดํ๋ฆฌ์ผ์ด์ ์ ์ด๋ฆ.app ์ด ๋จ๋ ๊ฒ ๋ง๋๋ฐ. ๋๋ ์ฌ๊ธฐ์ ๋์ถฉ ์ด๋ฐ ๊ฒฝ์ฐ์์.. ๋ก ๋จ๋ ์ผ์ด์ค... ๋์ ๊ฒฝ์ฐ์๋, ๋ค๋ฅธ ์ฌ๋์ผ๋ก๋ถํฐ ์ฑ ํจํค์ง๊ฐ ๋์ด ์ฌ ๋ settings.gradle ์ด ์์ด์ ์๊ธด ๋ฌธ์ ์๋ค. ๋ค๋ฅธ ํจํค์ง์ ๋น๊ตํ๋ฉฐ settings.gradle ์ ๋ฃ์ด ์ฃผ์. (์ฑ์ ๋ง๋๋ ๋ฐฉ๋ฒ?.. 2021. 12. 28. [์๋๋ก์ด๋] ์ค๋ฅ ํด๊ฒฐ The minCompileSdk (31) specified in adependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties) ๊ทธ๋ฆฌ๊ณ ๋ฉํ๋ฐ์ดํฐ ์ค์ต ์ค๋ฅ ๋ด์ฉ : One or more issues found when checking AAR metadata values: The minCompileSdk (31) specified in a dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties) is greater than this module's compileSdkVersion (android-27). Dependency: androidx.appcompat:appcompat:1.4.0. AAR metadata file: C:\Users\shin\.gradle\caches\transforms-3\๋ญ๊ฐ์ ๋ํ ํด์๊ฐ ๊ฐ์... ์ฑ ์์ด๋์ ๋ํ ํด์๊ฐ์ธ๊ฐ?\t.. 2021. 11. 29. [์๋๋ก์ด๋] ๊ธ์ ์ ๋ฐ๊พธ๊ธฐ - SpannableString, SpannableStringBuilder build.gradle (:app) plugins { id 'com.android.application' } android { compileSdk 30 defaultConfig { applicationId "com.devshin93.spannabletest" minSdk 25 targetSdk 30 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rule.. 2021. 11. 26. ์ด์ 1 2 3 4 5 ยทยทยท 7 ๋ค์ ๋ฐ์ํ