๋ชฉ๋กAndroid/Android Studio (49)
๐ฑ dreaming DiNO
https://sjhp.tistory.com/3
์ค๋ฅ ๋ฐ์ > Task :face:bundleReleaseLocalLintAar FAILED Execution failed for task ':face:bundleReleaseLocalLintAar'. > Direct local .aar file dependencies are not supported when building an AAR. The resulting AAR would be broken because the classes and Android resources from any local .aar file dependencies would not be packaged in the resulting AAR. Previous versions of the Android Gradle Plugin pr..

์๋๋ก์ด๋ ์คํ๋์ค์์ release ๋ก ๋น๋ํ ๋์ ์๋์ ๊ฐ์ ์ค๋ฅ ๋ฉ์์ง the apk for your currently selected variant is not signed. please specify a signing configuration. โ โ * app ์์ ๋ง์ฐ์ค ์ค๋ฅธ์ชฝ ๋ฒํผ์ ํด๋ฆญํ์ฌ์ ๋ณด์ฌ์ง๋ ํ์ ๋ฉ๋ด์์ "Open Module Settings" ๋ฉ๋ด๋ฅผ ํด๋ฆญํ๋ค. โ * Build Variants ๋ฅผ ํด๋ฆญํ ํ, Build Types ํญ์ ํด๋ฆญํ๊ณ release ๋ฅผ ์ ํํ๋ค. ๊ทธ๋ฆฌ๊ณ , Signing Config ์ ์ ์ ํ ํญ๋ชฉ์ ์ ํํ๋ค. ๋ง์ฝ Signining Config ์ ์๋ฌด ๊ฒ๋ ์ ํํ ์ ์๋ค๋ฉด Modules ๋ฅผ ํด๋ฆญํ ํ, Signing Configs ํญ์ ํด๋ฆญํ์ฌ..

์๋๋ก์ด๋ Q ์ดํ, ์๋๋ฐ์ค ๊ตฌ์กฐ์ ์ธ๋ถ ์ ์ฅ์์์ ํ์ผ์ ์ฝ์ด ๋ณด์ ์๋๋ก์ด๋ Q์ Scoped Storage TODO:: ํ๋ก์ ํธ์ ํฌํจ๋ ํ ์คํธ ํ์ผ์, ์ธ๋ถ ์ ์ฅ์ com.app.a ๋ก ๋ณต์ฌํ์ฌ, ํ์ํ ๋๋ง๋ค ์ฑ์ ์ธ๋ถ ์ ์ฅ์์ ์ ๊ทผํ์ฌ ๋ด์ฉ์ ์ฝ์ด ์ฌ ๊ฒ! 1. ํ๋ก์ ํธ ๋ด, assets/datasets/aaa.txt 2. ์ธ๋ถ ์ ์ฅ์ ์ฝ๊ธฐ/์ฐ๊ธฐ ๊ฐ๋ฅ ์ฌ๋ถ ํ์ธ // TODO:: ์ ์ฅ์ ํ ์คํธ VCDebugLog.d(logTag, "isReadable: ${isExternalStorageReadable()}") // true VCDebugLog.d(logTag, "isWritable: ${isExternalStorageWritable()}") // true testCopy() // Check..
Gradle signingReport ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ์๋ช ์ธ์ฆ์์ SHA-1์ ๊ฐ์ ธ์ฌ ์๋ ์๋ค. ./gradlew signingReport ์๋ช ๋ณด๊ณ ์์๋ ๊ฐ ์ฑ์ ๋ณํ์ ๊ดํ ์๋ช ์ ๋ณด๊ฐ ํฌํจ๋ฉ๋๋ค. > Task :app:signingReport Variant: debug Config: debug Store: ~/.android/debug.keystore Alias: AndroidDebugKey MD5: A5:88:41:04:8D:06:71:6D:FE:33:76:87:AC:AD:19:23 SHA1: A7:89:E5:05:C8:17:A1:22:EA:90:6E:A6:EA:A3:D4:8B:3A:30:AB:18 SHA-256: 05:A2:2C:35:EE:F2:51:23:72:4D:72:67:A5:6C:8..

์ฐธ๊ณ ๊ธ : https://beeyoo0o0ncha.tistory.com/30 ์๋๋ก์ด๋ ๋ด๋ถ์ ์ฅ์ ์ธ๋ถ์ ์ฅ์ ์ดํดํ๊ฒ ์ ๋ฆฌ ์๋๋ก์ด๋์์ ์ฑ์ ์ ์ฅ์๊ฐ 2๊ฐ์ง๊ฐ์๋ค. ๋ด๋ถ ์ ์ฅ์(Internal Storage) , ์ธ๋ถ ์ ์ฅ์(External Storage) ๋ด๋ถ์ ์ฅ์ ํด๋น ์ฑ์ private ๊ณต๊ฐ์ด๋ฉฐ ๋ค๋ฅธ์ฑ์์ ์ ๊ทผ์ด ๋ถ๊ฐ๋ฅํ๋ค ๋ ธ์ถ๋๋ฉด ์๋๋ ์ฑ์ beeyoo0o0ncha.tistory.com https://brunch.co.kr/@huewu/8#comment [2021-06-04 ์ ๋ฐ์ดํธ] ์ด์ ์ ์๋๋ก์ด๋ 11์ ๋ํด ๊ณต๋ถํ๋ ๋ด์ฉ ์ค ์๋๋ก์ด๋ 10์์ ๋์จ ๊ฑฐ์ง๋ง 11์์๋ ์ธ๊ธ๋ ๋ฒ์ ์ง์ ์ ์ฅ์(Scoped Storage)์ ๊ด๋ จ ์ฌํญ๋ค์ ๋ํด ์ ๋ฆฌํด๋ณด๋ คํฉ๋๋ค. ใ ใ ๊ทธ๋ฆผ๊ณผ ํจ๊ป ๊ฐ๋จํ๊ฒ ..
@SuppressLint("SetJavaScriptEnabled") override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) BleDebugLog.i(logTag, "onViewCreated-()") val headers = HashMap() headers["Authorization"] = App.prefs.getString("token", "no token") binding.webView.apply { settings.javaScriptEnabled = true settings.loadWithOverviewMode = true settings.useWid..
@SuppressLint("SetJavaScriptEnabled") override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) BleDebugLog.i(logTag, "onViewCreated-()") val headers = HashMap() headers["Authorization"] = App.prefs.getString("token", "no token") binding.webView.apply { loadUrl("$BASE_URL/test/activityListWebView", headers) webViewClient = WebViewClient()..

๋ฌธ์ ๋ฐ์ Postman ๋ api ๊ฐ ์ ๋๋ค. iOS๋ ์ ๋๋ค. ๊ทผ๋ฐ ๋๋ง ์๋๋ค. Okhttp log๋ฅผ ๋ณด๋ ์๊พธ 500 Error ๊ฐ ๋จ์ด์ก๋ค. ํ๋ผ๋ฏธํฐ๋ฅผ ์ ๋ชป๋ด์ ๋ณด๋ผ ๋๋ ์ ๋ฌ๋๋ฐ, ์ํผ ๋ค ๋๋๋ฐ ๋๋ง ์๋๋๊ฑฐ๋ฉด ๋ ํธ๋กํ์ผ๋ก ๋ณด๋ผ ๋์ ๋ฌธ์ ๊ฐ ์๋ค๋ ๊ฒ์ด๋ค. Content-Type : application/json; charset=UTF-8 ์ด ๋ฌธ์ ์๋ค. ์์ ํ๋ก์ ํธ POST ๋ฐฉ์๊ณผ ๋น๊ตํด๋ณด๋, ์์ ๋ช ์์ ์ผ๋ก Content-Type ์ application/json ์ผ๋ก ๋ฃ์ด์ ๋ณด๋ด์ฃผ์๋ค. @Hearders ๋ฏธ์ ๋ ฅ -> POST http://1.214.117.218:8888/login 2023-03-16 09:55:51.843 30434-30520 I/okhttp.OkHttpClien..
find() ํจ์ ์ฌ์ฉ ์์ผ๋ฉด ๊ทธ ๊ฐ๋ง return ์์ผ๋ฉด null return fun main(args: Array) { val list = arrayListOf("apple", "banana", "ananas") val firstItem = list.find { it == "mango" } val secondItem = list.find { it == "banana" } System.out.println(firstItem) // null System.out.println(secondItem) // banana }