Android Studio 4.2 ์ด์ƒ์—์„œ frameworks.jar ๋กœ ๋นŒ๋“œํ•˜์—ฌ hidden api ์‚ฌ์šฉํ•˜๊ธฐ

2022. 10. 26. 19:09ยท์•ฑ๊ฐœ๋ฐœ

๐ŸŽƒ  custom jar ํŒŒ์ผ์„ ๋งŒ๋“ค์–ด์„œ ํ”„๋กœ์ ํŠธ์— ์ถ”๊ฐ€

Android SDK ์— ํฌํ•จ๋˜์ง€ ์•Š์€ hidden api ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด custom jar ํŒŒ์ผ์„ ๋งŒ๋“ค์–ด์„œ ํ”„๋กœ์ ํŠธ์— ์ถ”๊ฐ€ํ•ด์ฃผ๋Š” ๊ณผ์ •์ด ํ•„์š”ํ•˜๋‹ค. ์ด ๊ณผ์ •์€ ์•„๋ž˜ ๋ธ”๋กœ๊ทธ์— ์ž์„ธํžˆ ๋‚˜์™€์žˆ๋‹ค. 

https://codechacha.com/ko/android-compile-with-custom-framework-jar/

 

์•ˆ๋“œ๋กœ์ด๋“œ ์ŠคํŠœ๋””์˜ค, custom framework.jar๋กœ ๋นŒ๋“œํ•˜๊ธฐ

Android Studio์—์„œ custom framework.jar๋ฅผ importํ•˜์—ฌ hidden api ํ˜ธ์ถœํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ด…๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์•ฑ์€ ์•ˆ๋“œ๋กœ์ด๋“œ SDK๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ๋ฐœ๋ฉ๋‹ˆ๋‹ค. hidden api๋ฅผ ํ˜ธ์ถœํ•˜๋ ค๋ฉด reflection์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ c

codechacha.com

 

ํ•˜์ง€๋งŒ Android Studio 4.2 ์ด์ƒ์—์„œ ์œ„ ๋ธ”๋กœ๊ทธ์— ์žˆ๋Š” ๋‚ด์šฉ๋Œ€๋กœ gradle ์„ค์ •์„ ํ•˜๋ฉด 

custom.jar ๋ณด๋‹ค Android SDK ๋ฅผ ๋จผ์ € ์ฐธ์กฐํ•˜๊ฒŒ ๋˜์–ด hidden api ๋ฅผ ์‚ฌ์šฉํ•œ ๋ถ€๋ถ„๋“ค์—์„œ 'cannot find symbol' ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜๊ฒŒ ๋œ๋‹ค. ๊ทธ๋ž˜์„œ ์•„๋ž˜์™€ ๊ฐ™์ด gradle ์„ค์ •์„ ํ•ด์ค˜์•ผํ•œ๋‹ค.

 

๐Ÿ’‍โ™‚๏ธ  Android Studio 4.2 ์ด์ƒ

    gradle.projectsEvaluated {
        tasks.withType(JavaCompile) {
            if(options.bootstrapClasspath != null) {
                Set<File> fileSet = options.bootstrapClasspath.getFiles()
                List<File> newFileList = new ArrayList<>();
                newFileList.add(new File("./app/extlib/frameworks.jar"))
                newFileList.addAll(fileSet)
                options.bootstrapClasspath = files(
                        newFileList.toArray()
                )
            }
        }
    }โ€‹

 

๐Ÿ’‍โ™‚๏ธ Android Studio 4.1 ์ดํ•˜

    gradle.projectsEvaluated {
        tasks.withType(JavaCompile) {
            options.compilerArgs.add('-Xbootclasspath/p:app/extlib/frameworks.jar')
        }
    }

 

[์ฐธ์กฐ]

 

https://chauyan.dev/2022/01/23/Import-Android-Framework-Jar

 

Import Android Framework Jar

Import AOSP framework jar fileWhy do we import the AOSP framework jar file to the Android Studio? It’s usually unnecessary to import this jar file to develop a standard application for your project.

chauyan.dev

 

์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'์•ฑ๊ฐœ๋ฐœ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Solved] Android Studio ํ”„๋กœ์ ํŠธ 'Run' ์‹œ, "Couldn't terminate the existing process for ํŒจํ‚ค์ง€๋ช…" ์˜ค๋ฅ˜ ๋ฐœ์ƒ  (0) 2022.10.04
gitlab enterprise ์›๊ฒฉ ์ €์žฅ์†Œ๋ฅผ ๋กœ์ปฌ์— clone ํ•˜๋Š”๋ฒ• (+์†Œ์ŠคํŠธ๋ฆฌ)  (0) 2022.01.27
'์•ฑ๊ฐœ๋ฐœ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [Solved] Android Studio ํ”„๋กœ์ ํŠธ 'Run' ์‹œ, "Couldn't terminate the existing process for ํŒจํ‚ค์ง€๋ช…" ์˜ค๋ฅ˜ ๋ฐœ์ƒ
  • gitlab enterprise ์›๊ฒฉ ์ €์žฅ์†Œ๋ฅผ ๋กœ์ปฌ์— clone ํ•˜๋Š”๋ฒ• (+์†Œ์ŠคํŠธ๋ฆฌ)
su__j
su__j
  • su__j
    su's study log
    su__j
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (5)
      • ์•ฑ๊ฐœ๋ฐœ (5)
        • ์•ˆ๋“œ๋กœ์ด๋“œ with ChatGPT (2)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ์ธ๊ธฐ ๊ธ€

    • ์ตœ๊ทผ ๊ธ€

    • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.0
    su__j
    Android Studio 4.2 ์ด์ƒ์—์„œ frameworks.jar ๋กœ ๋นŒ๋“œํ•˜์—ฌ hidden api ์‚ฌ์šฉํ•˜๊ธฐ
    ์ƒ๋‹จ์œผ๋กœ

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”